const AST = require('./ast') module.exports = { '+': (a, b) => new AST.Number({ value: a.value + b.value }), '-': (a, b) => new AST.Number({ value: a.value - b.value }), '*': (a, b) => new AST.Number({ value: a.value * b.value }), '/': (a, b) => new AST.Number({ value: a.value / b.value }), '=': (a, b) => new AST.Boolean({ value: a.value === b.value }), '>': (a, b) => new AST.Boolean({ value: a.value > b.value }), '<': (a, b) => new AST.Boolean({ value: a.value < b.value }), '>=': (a, b) => new AST.Boolean({ value: a.value >= b.value }), '<=': (a, b) => new AST.Boolean({ value: a.value <= b.value }), 'list': (...args) => { return new AST.List({ elements: args }) }, }