1234567891011121314151617181920212223 |
- const AST = require('./ast')
-
- module.exports = class Compiler {
- compile(tree) {
- let output = ''
-
- tree.forEach(node => {
- output += this.compileNode(node)
- })
-
- return output
- }
-
- compileNode(node) {
- switch (node.constructor) {
- case AST.Number:
- case AST.String:
- return node.value
- case AST.Lambda:
- return '<lambda>'
- }
- }
- }
|