diff options
Diffstat (limited to 'core.nom')
| -rw-r--r-- | core.nom | 9 |
1 files changed, 8 insertions, 1 deletions
@@ -26,7 +26,11 @@ rule ["eval %code", "run %code"]: lua expr "compiler:run(vars.code)" macro "source code %code": - lua expr "compiler.utils.repr(vars.code.src, true)" + lua block ".." + |if vars.code.value.type ~= "Thunk" then + | compiler:error("'source code %' only takes code blocks, not "..vars.code.value.type) + |end + lua expr "compiler.utils.repr(vars.code.value.value.src, true)" rule "run file %filename": lua block ".." @@ -138,6 +142,9 @@ rule "%a == %b": rule "%a != %b": lua expr "((vars.a ~= vars.b) or not compiler.utils.equivalent(vars.a, vars.b))" +macro "repr %obj": + ".."|compiler.utils.repr(\%obj as lua expr\, true) + macro "say %str": ".."|compiler:writeln(compiler.utils.repr(\%str as lua expr\)) |
