Scheme to JavaScript Language Translator (written in Python)
-
includes a lexer and a paser to convert Scheme (LISP) code to an AST represented as nested lists
-
designed an object-oriented JavaScript AST
-
implemented a set of mutually recursive functions to translate Scheme ASTs to JavaScript ASTs
-
created a code generator that emits JavaScript ASTs as formatted JavaScript code
-
translator supports arithmetic operations, functions (including recursive functions), and conditional statements