eval(readFile('Compiled_LJS_Parser')) eval(readFile('Compiled_LJS_Helpers')) ometa LJS2 <: JSTranslator { loop curlyTrans:body -> { wrapLoop('$tLoop.loop', 'while (true) {' + body + '}')}, stop -> { doOrPropagate('$tAction.br', '$tLoop.loop', 'break', 'break')}, while trans:cond trans:body -> { wrapLoop('$tLoop.js', 'while(' + cond + ') {' + body + '}') }, break -> { doOrPropagate('$tAction.br', '$tLoop.js', 'break', 'break') } } a = LJSParser.matchAll("loop{while(true){while(true){stop;}}}alert(2);", "topLevel") b = LJS2.match(a, "trans") eval(b)