aboutsummaryrefslogtreecommitdiff
path: root/nomsu_compiler.lua
AgeCommit message (Collapse)Author
2018-09-10Fixed tree_to_nomsu for method calls that span lines.Bruce Hill
2018-09-10Upgraded to 3.8 (text method changes) and fixed some bugs inBruce Hill
tree_to_nomsu.
2018-09-10Shifting towards more text methods instead of text global functions.Bruce Hill
Also fixed a bug with method call parenthesizing.
2018-09-06Removed the mandatory "_" prefix for Nomsu variables, renamed "list" andBruce Hill
"dict" to "List" and "Dict", or in Nomsu's environment, "_List" and "_Dict", removed uuid.lua and replaced it with core/id.nom for handling IDs.
2018-08-31Removing the "A_" prefix on action names, and improving the quality ofBruce Hill
as_lua_id() (guaranteed injectivity).
2018-08-29Handling more compatibility stuff, including Lua 5.4, and a backup forBruce Hill
if openssl module is not found, and moving containers (List/Dict) into their own file, as well as bit operators (and support for __bxor, etc. metamethods in Lua 5.2/LuaJIT)
2018-08-29Tweaked version 3.6 to include deprecating list append/removal functionsBruce Hill
in favor of using a method call style.
2018-08-29Switched "as_lua_id" to not add an underscore by default, and just addBruce Hill
it manually to variables and A_ as a prefix to actions. Now, by default, classes and method calls don't use the A_ prefix, which means nomsu can more easily play nice with regular Lua objects.
2018-08-28Lots of overhaul, supporting a new Object Oriented approach (e.g.Bruce Hill
%obj::action 1 2) and syntax.
2018-08-27Bunch of miscellaneous changes. Paved the way a little bit for havingBruce Hill
different compiler domains.
2018-07-30Cleaning up clumping logic a little.Bruce Hill
2018-07-30Changed autoformatting rules to ensure tests get clumped together withBruce Hill
the thing below them.
2018-07-30Added bit library and support for checking Lua version and whetherBruce Hill
LuaJIT is being used.
2018-07-26Fixed a bug where if an indented string interpolation was at the end ofBruce Hill
an indented text, the nomsu codegen would fail to put a "\n.." after it, so it wouldn't parse as an iterpolation.
2018-07-26Recompiled.Bruce Hill
2018-07-24Updating file stuff for better compatibility with Lua 5.2 and fixingBruce Hill
some bugs. Also updated README to provide more compatibility info and list Lua5.2+ as a requirement.
2018-07-24Updated package.nomsupath behavior to first search the installedBruce Hill
locations, *then* search the current directory. This makes the system `nomsu` run properly, even if the local directory has a broken file that has the same name as a nomsu file.
2018-07-23Renamed nomsu_tree -> syntax_tree, so anyone looking for syntax treesBruce Hill
knows where to look.
2018-07-23Fixed blocks starting with extra newline when they start with a comment.Bruce Hill
2018-07-22Merging List/Dict codegen paths to reduce code duplication.Bruce Hill
2018-07-22Better handling of parsing non-filechunks text.Bruce Hill
2018-07-21Improvements working towards better inline tests. Improved handling ofBruce Hill
file spoofing and adding -e command line flag for executing a string.
2018-07-20Improving nomsu codegen.Bruce Hill
2018-07-20Slightly better newline handling for long text. Now won't force anBruce Hill
indent for "\nhello"
2018-07-20Added documentation.Bruce Hill
2018-07-20Fix for (..)-indented actions not handling newlines right.Bruce Hill
2018-07-20Simplifying and correcting the nomsu codegen.Bruce Hill
2018-07-19Improving and cleaning up nomsu codegen.Bruce Hill
2018-07-19Fixes and simplifications for nomsu codegen.Bruce Hill
2018-07-19Hopefully last correctness fix for trailing_line_len(), now it's justBruce Hill
dumb and slow, but correct. Also simplified recursion options a bit for tree_to_nomsu()
2018-07-19Fixed some bugs in trailing_line_len() and refactored tree_to_nomsu intoBruce Hill
separate inline/not-inline functions.
2018-07-19*actual* fix for the codegen for (do: if (yes) (: say "hi"); say "done")Bruce Hill
example
2018-07-19Fix for nomsu codegen of blocks, particularly nested mutli-blocks like:Bruce Hill
(do: if (yes) (: say "hi"); say "done")
2018-07-18Updating to version 2.4.4.3, with new syntax for multi-statement 'if'Bruce Hill
and switch statements.
2018-07-17Improving nomsu codegen.Bruce Hill
2018-07-17Upgraded core code to latest Nomsu verison.Bruce Hill
2018-07-17Fixed a bug in text escapes in nomsu codegen.Bruce Hill
2018-07-17Oops, didn't mean to check in smushed_action.Bruce Hill
2018-07-17Optimization/simplification pass.Bruce Hill
2018-07-17Improvements to nomsu codegen.Bruce Hill
2018-07-17Overhaul of comment handling, plus a few fixes (e.g. a fix for indentedBruce Hill
text that begins with a nomsu comment)
2018-07-15Major changes to how versioning and parsing work. This should be aBruce Hill
better path going forward to handling upgrades. Old syntax files will stick around for compatibility purposes. Old syntax can be parsed into valid syntax trees via the old syntax (.peg) files, and then old syntax trees should be valid and can be upgraded via the normal code path. This change has lots of improvements to Nomsu codegen too.
2018-07-14Aesthetic tweak to generated nomsu code with colons.Bruce Hill
2018-07-14Fixed up some edge cases with parsing and comments.Bruce Hill
2018-07-14Fixed up comment generation to old standardsBruce Hill
2018-07-13Minor changes.Bruce Hill
2018-07-12Fixing up comments, slowly.Bruce Hill
2018-07-12All tests passing.Bruce Hill
2018-07-11Fixed nomsu codegen for indented text and improved text parsing. AlsoBruce Hill
moved some more tests inline.
2018-07-10Fixed dumb bug that broke the tests.Bruce Hill