|
a82b0d9d24
|
Added support for $(foo 1 baz 2) as a way to access (foo 1 baz 2)'s
meaning.
|
2019-01-01 15:53:21 -08:00 |
|
|
b6d3cbd61c
|
Misc changes, including text indented interpolations are now indented
relative to the text, not the opening '("', code objects can now remove
all free vars, the REPL uses global vars. Error API is changing a bit.
|
2019-01-01 15:07:10 -08:00 |
|
|
a7d912a33a
|
Initial pass on updating syntax.
|
2018-12-18 19:30:12 -08:00 |
|
|
2360ada21f
|
Codegen tweak
|
2018-12-14 19:26:05 -08:00 |
|
|
83a40b7493
|
Updating to support multiple method calls.
|
2018-12-14 19:25:03 -08:00 |
|
|
6ba84a0f50
|
Initial setup work for syntax version 5.
|
2018-12-14 17:49:46 -08:00 |
|
|
0d88091f8d
|
Cleanups and codegen improvements/fixes.
|
2018-12-13 15:21:55 -08:00 |
|
|
efd743591e
|
Renamed append/concat_append to add/concat_add for Code objects.
|
2018-11-29 14:57:56 -08:00 |
|
|
09e571ffa6
|
Extended text comprehensions to Lua constructors.
|
2018-11-29 14:51:26 -08:00 |
|
|
7a7dcefc44
|
Added text comprehensions (in the style of the list/dict ones)
|
2018-11-29 14:23:17 -08:00 |
|
|
8e5f1b9e1e
|
Simplifying the control flow API and deduplicating the code.
|
2018-11-26 16:22:04 -08:00 |
|
|
1a794c6487
|
Tweaks and tidying.
|
2018-11-23 17:22:29 -08:00 |
|
|
acd1191fb0
|
Tweaks and API cleanup.
|
2018-11-19 17:21:17 -08:00 |
|
|
7f47d42040
|
In-progress (but working) overhaul of some elements including: function
calls, lib/thing.nom API, multi-assignments, varargs, etc.
|
2018-11-17 14:39:08 -08:00 |
|
|
171e9d674e
|
Re-implemented nomsu -> lua comment translation and added file chunk
comments.
|
2018-11-11 18:28:34 -08:00 |
|
|
b918668f18
|
Fixed -O optimization flag.
|
2018-11-11 18:03:25 -08:00 |
|
|
69aaea030e
|
No longer passing tree to every compile action. Now, you can just
return a LuaCode object, and it will automatically get a source from
`tree` if it didn't already have a source. Plus some fixes/cleanup.
|
2018-11-09 16:41:19 -08:00 |
|
|
7d2b7199d8
|
Lots of cleanups, including expanded use of (... compiles to "text
literal") shorthand, deprecating Lua value, and more use of Lua "..."
with text interpolations.
|
2018-11-09 14:37:22 -08:00 |
|
|
652c29bdef
|
Major overhaul, splitting nomsu_compiler into nomsu_environment,
nomsu_compiler, and nomsu_decompiler. Also added comprehensions.
|
2018-11-08 15:24:15 -08:00 |
|
|
c8ccbe5f42
|
Removed utils.lua, simplified some metaprogramming stuff, added native support
for calling functions with (%a %b %c) instead of (call %a with [%b,
%c]), renamed _List -> List, _Dict -> Dict, improved example code.
|
2018-11-06 15:15:14 -08:00 |
|
|
307dea1881
|
Changed stub convention to (foo 1 baz 2) -> foo_1_baz instead of
foo_1_baz_2, removed "smext", made some cleanup changes.
|
2018-11-02 14:39:23 -07:00 |
|
|
d0c3c57f7b
|
Simplified AST to just use a single moonscript class called "SyntaxTree"
instead of a different metatable for each type of syntax tree.
|
2018-10-31 15:54:51 -07:00 |
|
|
83219f8522
|
Bumped version number, fixed REPL, and simplified/fixed (use %).
|
2018-10-31 03:52:00 -07:00 |
|
|
ea3197aaff
|
Fully working version of (action [foo]: baz) -> ((foo) means: baz)
refactor and misc other changes.
|
2018-10-30 23:42:36 -07:00 |
|
|
e7e84c9eda
|
Fix for compiler not parenthesizing method targets, fix for parser not
recognizing \ line continuation, and improvements to
upgrade tool API.
|
2018-10-30 20:32:49 -07:00 |
|
|
fdf7a537c8
|
Versioning fixes.
|
2018-10-30 19:50:20 -07:00 |
|
|
23abab4f80
|
Some cleanups and fixes, made the parser more permissive of prematurely
terminated files.
|
2018-10-29 13:00:30 -07:00 |
|
|
8a8940c9bc
|
Fixes for actions with targets colliding with compiler actions, and lua
keywords as dict keys.
|
2018-09-26 13:59:31 -07:00 |
|
|
28d0792e69
|
Rebuild.
|
2018-09-21 00:30:53 -07:00 |
|
Bruce Hill
|
79d4bd5125
|
Got rid of repr() use and replaced with :as_lua() or :as_nomsu() in as
many places as possible.
|
2018-09-18 19:49:29 -07:00 |
|
Bruce Hill
|
c1cba45968
|
Added support for compile actions returning trees, and compiling blocks
into values.
|
2018-09-17 15:30:24 -07:00 |
|
Bruce Hill
|
e3bf10196a
|
Added support for compile actions returning syntax trees, which will get
recompiled until they produce Lua code.
|
2018-09-16 17:53:26 -07:00 |
|
Bruce Hill
|
f225a48367
|
Much better error reporting for compile errors (i.e. not parse errors),
using the pretty_error system.
|
2018-09-16 17:38:51 -07:00 |
|
Bruce Hill
|
96e5e567cb
|
Working module system.
|
2018-09-16 16:57:24 -07:00 |
|
Bruce Hill
|
2282085e13
|
Initial working version.
|
2018-09-15 20:20:46 -07:00 |
|
Bruce Hill
|
f8cfdd0f22
|
Better parsing of strings and handling of non-printable characters and
tabs.
|
2018-09-15 15:39:57 -07:00 |
|
Bruce Hill
|
e22c35681f
|
Auto-upgraded everything.
|
2018-09-14 19:17:16 -07:00 |
|
Bruce Hill
|
7112af7cb6
|
Fixed comments in nomsu codegen.
|
2018-09-14 15:24:31 -07:00 |
|
Bruce Hill
|
626b6cab79
|
Updated compiler to produce cool string output.
|
2018-09-14 15:20:07 -07:00 |
|
Bruce Hill
|
3e2844ef62
|
Added error truncating.
|
2018-09-14 14:55:00 -07:00 |
|
Bruce Hill
|
9bba7dd2cd
|
Using more concise peg file finding.
|
2018-09-14 14:46:29 -07:00 |
|
Bruce Hill
|
d428725c86
|
Recompile
|
2018-09-14 14:43:33 -07:00 |
|
Bruce Hill
|
13ce4e7ee9
|
Renaming parser2 to parser.
|
2018-09-14 14:42:20 -07:00 |
|
Bruce Hill
|
31f593fb09
|
Removing the remnants of the old parser system.
|
2018-09-14 14:39:10 -07:00 |
|
Bruce Hill
|
54e1f99e90
|
Upgraded nomsu.1.peg to tidier version.
|
2018-09-14 14:26:06 -07:00 |
|
Bruce Hill
|
21d0d7901c
|
Upgraded nomsu.2.peg and fixed minor bug in Source serialization in
trees.
|
2018-09-14 14:12:22 -07:00 |
|
Bruce Hill
|
7c1f2dfd69
|
Fixes and improvements, and ported nomsu.3.peg to new tidier syntax.
|
2018-09-14 14:01:07 -07:00 |
|
Bruce Hill
|
ea310306d7
|
Initial working version.
|
2018-09-12 15:32:04 -07:00 |
|
Bruce Hill
|
9e10c8bf00
|
Removing dead code and string.as_lua_id() (now just set on string
metametatable)
|
2018-09-10 16:37:16 -07:00 |
|
Bruce Hill
|
989e133a57
|
Fixed tree_to_nomsu for method calls that span lines.
|
2018-09-10 16:29:17 -07:00 |
|