eval(readFile('Compiled_JavaScript_Compiler')) ometa LJS2NJSParser <: JSParser { isKeyword :x = ?(x == 'loop' || x == 'stop' || x == 'start' || x == 'repeat' || x == 'taskswitcher' || x == 'runtask' || x == 'task' || x == 'exittask') | super(`isKeyword, x), stmt = "loop" stmt:s -> [`loop, s] | "stop" sc -> [`stop] | "start" stmt:s -> [`start, s] | "repeat" sc -> [`repeat] | "taskswitcher" ":" expr:e block:b -> [`taskswitcher, e, b] | "runtask" expr:e -> [`runtask, e] | "task" expr:e block:b -> [`task, e, b] | "exittask" sc -> [`exittask] | ^stmt } ometa LJS2JSParser <: LJS2NJSParser { topLevel = srcElems:r spaces end -> [`doWhile, r, [`get, 'false']] }