require('src.util') require("src.types") require("src.lexer") require("src.parser") require("src.lower") require("src.output") require("src.methods.debug") require("src.methods.small") require("src.cli") -- local file = assert(io.open("code.lake", "r")) -- local code = file:read("*all") -- local lexer = Lexer:new(code, "test.lake") -- local lexer2 = Lexer:new(code, "test.lake") -- while true do -- local tok, err = lexer2:consume() -- if not tok then -- error("oh no " .. tostring(err.message)) -- end -- print(tok.kind, tok.content) -- if tok.kind == "eof" then break end -- end -- print'\n\n' -- local parser = Parser:new(lexer) -- local program, err = parser:parse() -- if not program then -- error(err.message) -- end -- ERGON = require("ERGON") -- print(ERGON.encodeIndented(program, 1, " ")) -- local output = Output:new("lua54", "debug") -- output:output(program) -- print'\n\n' -- print(table.concat(output.lines, "\n"))