25x Performance, Three Optimizations
On December 31st 2024, I decided that it was time to convert my scheme implementation to a CPS-based JIT compiler from an AST interpreter. The main reason for this was to make the creation of continuations mechanical. I would say that when implementing a language with call-with-current-continuation there are two “proper” ways to go about it: