Commit Graph

33 Commits

Author SHA1 Message Date
Bruce Hill
8cb2788e0d Re-added sources. 2018-05-26 15:04:38 -07:00
Bruce Hill
64294f5cd6 Removed the Word tree type and replaced it with raw strings, since
they're only used as part of Actions
2018-05-24 21:17:15 -07:00
Bruce Hill
d9b795ee45 Adding some src map building code. 2018-05-24 20:27:26 -07:00
Bruce Hill
ad94ed3653 Moved all the tree->lua and tree->nomsu code back into single functions
in nomsu.moon, and cleaned up how Vars are treated, since they are not
atomic.
2018-05-16 19:08:59 -07:00
Bruce Hill
6f6c4377b2 Initial working version. 2018-05-16 18:13:02 -07:00
Bruce Hill
af9dc07025 Converted DictEntry to be an actual tree, instead of a pseudo-tree, made 'parse % as %'
generate lua code with already-substituted tree literals instead of reparsing and
substituting at parse time, and made some general optimizations.
2018-05-16 15:45:59 -07:00
Bruce Hill
28cd9ae0b7 More API cleanup, and fixed a bug with optimized lua files generating
spurious circular import errors.
2018-05-15 15:22:03 -07:00
Bruce Hill
ae979c3718 Minor cleanups changes. 2018-05-15 14:53:42 -07:00
Bruce Hill
95ee15982b Switched to use inline nomsu generation for Nomsu tree lua
compilation and removed some dead code around Nomsu.debug
2018-05-11 13:54:24 -07:00
Bruce Hill
4126589afe Cleanup: removed "File" type trees (now just Block), overhauled
how_do_i.nom, added "result of %" macro, which allowed comprehensions to
be way more concisely defined. Moved len() operator into the nomsu
environment.
2018-05-10 22:47:18 -07:00
Bruce Hill
1a755ddee8 Added tentative support for luajit (depends on pure-lua LPEG
implementation).
2018-05-09 13:35:04 -07:00
Bruce Hill
a5bbce315d Minor tweaks/cleanups. 2018-05-03 22:34:00 -07:00
Bruce Hill
bf60ac28c5 Overhaul with smaller, more concise codebase around defining
actions/macros, and deleting some dead code.
2018-05-03 21:56:31 -07:00
Bruce Hill
36ead4d82b Cleanup of unnecessary parens in generated lua code for math operations. 2018-05-03 16:38:06 -07:00
Bruce Hill
e64a91b8ba Better error reporting and codegen. 2018-05-03 16:31:02 -07:00
Bruce Hill
35a5539185 Fix for math expression parsing 2018-04-30 14:50:43 -07:00
Bruce Hill
bf24824660 Improving idiomatic nomsu codegen 2018-04-28 20:45:27 -07:00
Bruce Hill
df9a82a971 Overhaul of command-line API. It's a bit cleaner now. 2018-04-28 17:08:44 -07:00
Bruce Hill
d13a945b5f Removed LFS dependency in favor of just using find 2018-04-28 15:25:31 -07:00
Bruce Hill
7f99c70d56 Fixed renaming lua_obj->code_obj 2018-04-26 14:00:15 -07:00
Bruce Hill
4e821308af Overhauling parsing of Blocks (can no longer contain only one statement) 2018-04-25 17:44:24 -07:00
Bruce Hill
5d59d510cd Removing end-of-line ":" and "(..)" for blocks (they just use
indentation now).
2018-04-25 16:31:09 -07:00
Bruce Hill
50a092e4b5 Got nomsu codegen working again. 2018-04-25 16:04:55 -07:00
Bruce Hill
ec5d730fa0 Switched repr() to only return ""-style strings, and not [[]]-style,
which helps with indenting generated lua code correctly. Also made a few
ergonomic fixes/changes for line breaking.
2018-04-24 20:39:18 -07:00
Bruce Hill
bff93d386c Refactor to improve indentation and move as_nomsu() into tree methods. 2018-04-24 20:17:08 -07:00
Bruce Hill
dec5ee8262 Lots of optimizations. 2018-04-20 16:23:59 -07:00
Bruce Hill
14bda2fb2d Cleanups and optimizations. 2018-04-20 14:33:57 -07:00
Bruce Hill
ecb4341bdc Switched last char check to first char so foo[x] doesn't get mixed up
with [[foo]].
2018-04-19 17:28:02 -07:00
Bruce Hill
da33269c30 All tests passing (except object) 2018-04-19 17:23:54 -07:00
Bruce Hill
dcb380f1f6 More cleanup, slowly working through operators/control_flow 2018-04-18 17:41:57 -07:00
Bruce Hill
16f3a189fd More working, shifting towards having Lua and Nomsu objects instead of
just strings.
2018-04-18 15:28:59 -07:00
Bruce Hill
26d0de8299 Partially working, at least for metaprogramming.nom 2018-04-17 14:36:55 -07:00
Bruce Hill
54fc7fc440 Moving tree_to_lua into each of the Nomsu tree types, which are now in
their own file.
2018-04-17 14:19:07 -07:00