The ZFS package

[Tags: library, public-domain]

A implementation of a zipper filesystem using delimited continuations.

Zipper-based File/Operating system with threading and exceptions all realized via delimited continuations. There are no unsafe operations, no GHC (let alone) Unix threads, no concurrency problems. Our threads can't even do IO and can't mutate any global state - and the type system sees to it.

To run, type main' fs1 on ghci after loading ZFS.hs. Then from some other terminal, type 'telnet localhost 1503'.

[Skip to ReadMe]


Versions0.0, 0.0.1, 0.0.2
Change logNone available
Dependenciesbase (>3 && <5), CC-delcont (<=0.2), containers, mtl, network, unix [details]
AuthorAmr Sabry, R. Kent Dybvig, Simon L. Peyton Jones, Oleg Kiselyov
MaintainerJulian K. Arni <>
Home page
Bug tracker
Source repositoryhead: git clone git://
UploadedTue Nov 25 18:44:11 UTC 2014 by jkarni
Downloads631 total (14 in last 30 days)
0 []
StatusDocs uploaded by user
Build status unknown [no reports yet]




Maintainers' corner

For package maintainers and hackage trustees

Readme for ZFS-0.0.2

This is a Cabalized and somewhat modernized/cleaned-up package containing Oleg's famous ZipperFS. For details, see <>.

A demonstration of how to use it is contained in zfs.pdf. The short of the matter is:

       "Load ZFS.hs into GHCi
       Start up the system: main at the GHCi prompt
       From some terminal: 'telnet localhost 1503'"

And then you can play around with it.

This package also comes with an old implementation of delimited continuations. Ideally it would be updated to use the maintained package, CC-Delcont <>. But I don't know how.