The speckled padloper is the world's smallest tortoise and this is a tiny turtle graphics language that runs in the browser.
I wrote this as an exercise in learning more about continuations and wrote the interpreter in continuation-passing style. It supports stepped evaluation. The language really is tiny and not very practical, but you can try out a live demo.
- PL101: Continuations: the exercise idea, most of the parser grammar and a bunch of bits of code are from here
- Continuation Passing Style Interpreters
- CPS Evaluator
- By example: Continuation-passing style in JavaScript
- The potentially asynchronous loop (helpful in thinking through how to handle looping in the interpreter)
- Trampolined Style (thanks to Darius Bacon for the pointer to this paper)