call/cc (no witty backronym invented yet)


Caleb is a call/cc implementation in Lisp. In my humble opinion, this is the only feature that cannot be added to Lisp easily. This project started out as an experiment to find out how complete a Lisp call/cc implementation can be. Also, this is a handy way to spice up my resume a little.

Notable features

Notable misfeatures

Planned features

None. I spend time with this project when I have free time, my brain is not fried due to my day job, and, due to a probably very serious mental disorder, I want to spend it with hacking Lisp and not living a life on the analog side of the display.

Someday I want to try this out on more Lisps (especially SBCL), implement serializable continuations (should not be too hard, because they are represented as Lisp objects), and write a lot more test cases to make sure that it works.


Compatible Lisp implementations

Since no implementation-dependent features or LispWorks extensions are used, it should work with most Lisps. The only notable exception is LispWorks 5.0, because the implementation of lexical environments has been changed, and I haven't found a way yet to implement the necessary functionality in arnesi yet (see lexenv.lisp there).

Mailing Lists


Point your favourite Subversion client at this address:

Or if you just want to browse the source, use this link.

Project members:

Valid XHTML 1.0 Strict