pLisp now has continuations. It took a lot of effort, slogging through the relevant literature, and a significant rewrite of the code, but it's finally done (I have not updated the GitHub repository yet; plan to do it shortly [Update: Done]).
Before proceeding further with other features, I thought I'd do a series of how-to posts on pLisp. These will serve as a sort of de facto documentation of pLisp (beats the 'You want documentation? Go to The Source, my friend' approach), and also provide pointers to folks looking to do their own projects (there's plenty of material out there on building/embedding an interpreter within a Lisp implementation; in my opinion, while this is good, it's a cop-out; such interpreters are meant mainly for illustrating concepts, trade-offs in design choices, etc. We still don't pierce the veil, so to speak. Not to mention the obvious hit in performance).
Here's a tentative list of posts:
- Part 1: Syntax and parsing
- Part 2: Core forms
- Part 3: The object system
- Part 4: Memory system
- Part 5: Compiler, virtual machine
- Part 6: Macros
- Part 7: Continuations
- Part 8: Garbage collection
- Part 9: Serialization
- Part 10: Foreign functions
- Part 11: This and that
- Part 12: Exception handling and object system
- Part 13: Updates