aboutsummaryrefslogtreecommitdiff
path: root/nomsu.moon
diff options
context:
space:
mode:
authorBruce Hill <bitbucket@bruce-hill.com>2018-01-10 13:52:41 -0800
committerBruce Hill <bitbucket@bruce-hill.com>2018-01-10 13:52:41 -0800
commitea05cc155ee2327be824e0619486b3c4c66d5550 (patch)
tree45b428342b38575bc4a6a14494d4c98e191e94c2 /nomsu.moon
parent787c7c5a6ce4ac6ba19890faf1afa067ea167104 (diff)
Switched back to using precompiled lua files instead of lua> "..",
because it's noticeably faster.
Diffstat (limited to 'nomsu.moon')
-rwxr-xr-xnomsu.moon10
1 files changed, 6 insertions, 4 deletions
diff --git a/nomsu.moon b/nomsu.moon
index 40350d9..49922fa 100755
--- a/nomsu.moon
+++ b/nomsu.moon
@@ -839,7 +839,7 @@ end]]\format(lua_code))
lua_code = lua.statements or (lua.expr..";")
lua_code = "-- Immediately:\n"..lua_code
@run_lua(lua_code, vars)
- return statements:""
+ return statements:lua_code
@defmacro "lua> %code", (vars)=>
lua = nomsu_string_as_lua(@, vars.code)
@@ -857,7 +857,9 @@ end]]\format(lua_code))
return dofile(vars.filename)(@, vars)
if vars.filename\match(".*%.nom")
if not @skip_precompiled -- Look for precompiled version
- file = io.open(vars.filename\gsub("%.nom", ".nomc"), "r")
+ file = io.open(vars.filename\gsub("%.nom", ".lua"), "r")
+ if file
+ return @run_lua(file\read("*a"), vars)
file = file or io.open(vars.filename)
if not file
@error "File does not exist: #{vars.filename}"
@@ -901,7 +903,7 @@ if arg
if args.input
-- Read a file or stdin and output either the printouts or the compiled lua
if args.flags["-c"] and not args.output
- args.output = args.input\gsub("%.nom", ".nomc")
+ args.output = args.input\gsub("%.nom", ".lua")
compiled_output = nil
if args.flags["-p"]
_write = c.write
@@ -919,7 +921,7 @@ if arg
vars = {}
retval, code = c\run(input, args.input, vars)
if args.output
- compiled_output\write("lua> \"..\"\n "..c\indent(code\gsub("\\","\\\\"), 1))
+ compiled_output\write(code)
if args.flags["-p"]
c.write = _write