To get to work code in JavaScript as quickly as possible, this plan can be followed:
-
like in plan, implement core data structures (like booleans, numbers, strings, symbols, vectors, structures/objects), but in JavaScript.
-
Scheme parser, similar to plan, but write it in Scheme. Use explicit calls to contructors for Scheme data types.
-
make translator from Scheme to JavaScript, without supporting TCO, call/cc, or all the Scheme data types (let's tentatively call this language I or ilang); translate the constructors for the Scheme data types to calls to the JavaScript functions from above.
-
Increase scope of previous point to allow for all features wished to be had quickly (interoperation with JavaScript, language features). (It would still not support features like TCO or call/cc, because JavaScript doesn't offer them, and the JavaScript debugger has to be used for debugging, but the generated JavaScript will be pretty readable.)
-
continue with plan, which will provide the infrastructure to interpret (or as additional step compile) the remaining Scheme features (TCO, call/cc, debugger).