Bruce Hill
59c79bdf57
Split up CLI and NomsuCompiler
2018-06-19 01:27:41 -07:00
Bruce Hill
1c8c84f8d2
Moved error logic into its own file.
2018-06-19 01:12:54 -07:00
Bruce Hill
d7d86e0268
Lots of cleanup.
2018-06-19 00:44:22 -07:00
Bruce Hill
6d8d617774
Added test for multiple labels.
2018-06-18 18:41:00 -07:00
Bruce Hill
7f98262dfa
Minor cleanups
2018-06-18 18:39:25 -07:00
Bruce Hill
f83cc3ad8a
More streamlining and cleanup.
2018-06-18 18:11:09 -07:00
Bruce Hill
a22de3fdbb
Moved parsing into a different file
2018-06-18 15:46:36 -07:00
Bruce Hill
16d127abb5
Initial working version.
2018-06-18 15:44:35 -07:00
Bruce Hill
fc71b0331b
Fixed some nomsu codegen bugs
2018-06-15 03:30:32 -07:00
Bruce Hill
9d6932a872
Cleaned up/improved the command line interface, and fixed the
...
REPL/autoformatting.
2018-06-15 03:11:56 -07:00
Bruce Hill
5629b81f78
Updating tests.
2018-06-15 00:40:40 -07:00
Bruce Hill
c161f48838
Updated README
2018-06-15 00:31:28 -07:00
Bruce Hill
f790caf0ab
Removed debug shim.
2018-06-15 00:20:32 -07:00
Bruce Hill
1a6e28e835
Improvements to object system.
2018-06-15 00:17:09 -07:00
Bruce Hill
b12744d831
Some cleanup and fixes. Simplifying a lot of code, and extending the
...
flexibility of scoping. Redesigned Object system too.
2018-06-14 23:25:34 -07:00
Bruce Hill
49f1eb3d08
Reshuffling some files.
2018-06-14 22:17:37 -07:00
Bruce Hill
82cfd3e54b
More streamlining and cleanup. Especially for core/metaprogramming.nom
2018-06-14 21:59:43 -07:00
Bruce Hill
282565a309
Fixed tree_to_nomsu to produce "blah\%x" instead of "blah\(%x)"
2018-06-13 14:54:08 -07:00
Bruce Hill
12d52f743c
Simplifying code.
2018-06-13 13:23:39 -07:00
Bruce Hill
45e0a831fe
Much improved code formatting for tree_to_nomsu
2018-06-12 23:47:54 -07:00
Bruce Hill
968b5da150
Fixed some bugs.
2018-06-12 20:15:56 -07:00
Bruce Hill
63a19db0dc
Working version.
2018-06-12 20:06:37 -07:00
Bruce Hill
b0997a7dbf
Minor optimizations to indent/dedent/nodent.
2018-06-12 18:16:44 -07:00
Bruce Hill
3c510e4ee5
Lots of optimizations and simplifications, especially towards getting
...
better performance on luajit.
2018-06-12 18:04:41 -07:00
Bruce Hill
b5fb8933af
Removed dependency on 'immutable' library. This lets LuaJIT do more
...
aggressive optimizations and generally helps performance. Some safety is
lost, but I think the performance gains, reduced complexity, and reduced
dependencies are worth it.
2018-06-12 15:14:07 -07:00
Bruce Hill
0c9973ff03
Tidying up exceptions and error reporting. Also simplified the grammar a
...
tiny bit.
2018-06-12 13:56:35 -07:00
Bruce Hill
7cd512d15e
Added alias: "% as number"
2018-06-06 14:19:54 -07:00
Bruce Hill
810ae220bc
Added list/dict metatables to make comparison and string representations
...
simpler. Also deleted Counters.
2018-06-06 13:25:34 -07:00
Bruce Hill
2d88c68d71
Fixed piping in file.
2018-06-05 16:44:43 -07:00
Bruce Hill
42632e01b2
Updating how_do_i
2018-06-05 16:42:13 -07:00
Bruce Hill
5dfdcb39a6
Fixed indentation detection for indented text with leading whitespace.
2018-06-05 16:38:18 -07:00
Bruce Hill
36b0c3dcf9
Updating documentation.
2018-06-05 03:39:50 -07:00
Bruce Hill
e22e107390
Minor tidying.
2018-06-04 23:02:13 -07:00
Bruce Hill
08e590ac57
Much better reporting for compile-time errors (now includes source and
...
line number again)
2018-06-04 22:54:08 -07:00
Bruce Hill
83183122f1
Optimizations and cleanup. Build script now fails on first error and
...
uses the precompiled versions it has just compiled.
2018-06-04 20:44:58 -07:00
Bruce Hill
563e415e07
Switched from Node(Tuple(values...), source) to Node(source, values...),
...
thanks to support from immutable-tables for mixed tables.
2018-06-04 17:57:07 -07:00
Bruce Hill
e7bdc35aa8
Cleanups to try/catch logic and object logic.
2018-06-04 17:23:13 -07:00
Bruce Hill
7cd4f276b7
Added todo
2018-05-30 17:27:10 -07:00
Bruce Hill
b53516c47c
Simplified and correctified lib/object (though the codegen still need
...
streamlining), added a .stub member to Action trees, and switched
Source's repr to be @filename[start:stop] instead of
"filename[start:stop]"
2018-05-30 17:21:19 -07:00
Bruce Hill
5637676bc4
Dead code cleanup
2018-05-30 14:29:15 -07:00
Bruce Hill
b3df63eb10
Added 'for (%k,%v) in ...' alias for 'for %k = %v in ...'
2018-05-30 14:08:30 -07:00
Bruce Hill
624fcdcc7e
Moved as_lua_id() onto 'string'
2018-05-30 13:46:54 -07:00
Bruce Hill
0afcb416bc
Microoptimization
2018-05-30 13:41:21 -07:00
Bruce Hill
aeceba800b
Deleted shebang rule. Comments handle it just fine.
2018-05-30 13:11:05 -07:00
Bruce Hill
f9229c5e91
Better parse error reporting.
2018-05-30 13:07:15 -07:00
Bruce Hill
e5d9879a79
Cleaned up patterns a little.
2018-05-30 12:07:08 -07:00
Bruce Hill
a01e7d27bd
Removed ldt shim
2018-05-29 19:23:34 -07:00
Bruce Hill
21e3a7b375
More improvements to error reporting.
2018-05-29 19:10:11 -07:00
Bruce Hill
8806d7639e
Cleaned and fixed up colored console text output for error messages.
2018-05-29 18:11:04 -07:00
Bruce Hill
e697689ddd
Fixed up the edge cases and simplified the code a bit.
2018-05-29 17:10:54 -07:00