Bruce Hill
126678f737
Adding fancy makefile that compiles all the moonscript files and
...
precompiles all the nomsu files and can build a nice executable file and
install it wherever you like.
2018-06-22 02:41:08 -07:00
Bruce Hill
86a3219e7f
Cleanup of some metaprogramming stuff, as well as adding support for
...
"package.nomsupath" to search for files in different locations, and
prioritizing use of "luafilesystem" over system calls.
2018-06-21 19:13:47 -07:00
Bruce Hill
7761f715f7
Cleaning up examples.
2018-06-20 15:23:10 -07:00
Bruce Hill
d73cbf0aa5
Cleanups.
2018-06-20 15:22:06 -07:00
Bruce Hill
c1cec2ac84
Tidying up error handling and REPL.
2018-06-19 15:24:39 -07:00
Bruce Hill
7deed5af41
Fixing up some error reporting
2018-06-19 02:00:59 -07:00
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