21 lines
543 B
Plaintext
21 lines
543 B
Plaintext
var fd = use("fd")
|
|
var json = use("json")
|
|
var tokenize = use("tokenize")
|
|
var parse = use("parse")
|
|
var fold = use("fold")
|
|
var mcode = use("mcode")
|
|
var streamline = use("streamline")
|
|
|
|
var name = args[0]
|
|
var src = text(fd.slurp(name))
|
|
var tok = tokenize(src, name)
|
|
var ast = parse(tok.tokens, src, name, tokenize)
|
|
var folded = fold(ast)
|
|
var compiled = mcode(folded)
|
|
var optimized = streamline(compiled)
|
|
var out = json.encode(optimized)
|
|
var f = fd.open("/tmp/mcode_dump.json", "w")
|
|
fd.write(f, out)
|
|
fd.close(f)
|
|
print("wrote /tmp/mcode_dump.json")
|