aboutsummaryrefslogtreecommitdiff
path: root/core/operators.nom
AgeCommit message (Collapse)Author
2018-08-30Auto-upgraded to 3.7Bruce Hill
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-29Fully updated to 3.6, deprecated old LuaCode global functions like "to 1Bruce Hill
write 2" and replaced them with method calls like "1::append 2"
2018-08-28Upgraded version to 3.5.5.6, corresponding to Object Oriented changes.Bruce Hill
2018-08-28Lots of overhaul, supporting a new Object Oriented approach (e.g.Bruce Hill
%obj::action 1 2) and syntax.
2018-07-30Added compatibility for 2.5.5.5 (file hash changes).Bruce Hill
2018-07-30Changed autoformatting rules to ensure tests get clumped together withBruce Hill
the thing below them.
2018-07-30Fixed bitwise operators to work on Lua 5.2 and LuaJIT, and added tests.Bruce Hill
This is the first case where precompiled code is now platform-dependent.
2018-07-26Switching compile action to parse action for 3-way comparison.Bruce Hill
2018-07-25Updated version numbers.Bruce Hill
2018-07-23Fixed blocks starting with extra newline when they start with a comment.Bruce Hill
2018-07-22Adding more inline tests.Bruce Hill
2018-07-22Re-autoformatted everything. The main changes are: no longer adding aBruce Hill
newline after 1-line indented code inside blocks, and forcing files to have a trailing newline. The trailing newline thing created a lot of spurious changes.
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-20Auto-formatted and auto-upgraded everything!Bruce Hill
2018-07-18Updating to version 2.4.4.3, with new syntax for multi-statement 'if'Bruce Hill
and switch statements.
2018-07-18Upgrading to version 2.3 (main change: "=" instead of "<-" forBruce Hill
assignment)
2018-07-17Upgraded core code to latest Nomsu verison.Bruce Hill
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-10Fixing up error reporting and ripping out LDT-specific code (now aBruce Hill
debugger can be provided by a command line flag)
2018-06-26Cleaning up metaprogramming a bit and fixing/adding test for recursionBruce Hill
control flow.
2018-06-21Cleanup of some metaprogramming stuff, as well as adding support forBruce Hill
"package.nomsupath" to search for files in different locations, and prioritizing use of "luafilesystem" over system calls.
2018-06-20Cleanups.Bruce Hill
2018-06-18More streamlining and cleanup.Bruce Hill
2018-06-18Initial working version.Bruce Hill
2018-06-14Some cleanup and fixes. Simplifying a lot of code, and extending theBruce Hill
flexibility of scoping. Redesigned Object system too.
2018-06-14Reshuffling some files.Bruce Hill
2018-06-14More streamlining and cleanup. Especially for core/metaprogramming.nomBruce Hill
2018-06-12Lots of optimizations and simplifications, especially towards gettingBruce Hill
better performance on luajit.
2018-06-06Added list/dict metatables to make comparison and string representationsBruce Hill
simpler. Also deleted Counters.
2018-06-04Optimizations and cleanup. Build script now fails on first error andBruce Hill
uses the precompiled versions it has just compiled.
2018-06-04Switched from Node(Tuple(values...), source) to Node(source, values...),Bruce Hill
thanks to support from immutable-tables for mixed tables.
2018-05-30Simplified and correctified lib/object (though the codegen still needBruce Hill
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-27Some tweaks/cleanup on the nomsu code as well as adding variableBruce Hill
mangling to 'parse % as %' to make almost hygienic macros.
2018-05-26Re-added sources.Bruce Hill
2018-05-16Moved all the tree->lua and tree->nomsu code back into single functionsBruce Hill
in nomsu.moon, and cleaned up how Vars are treated, since they are not atomic.
2018-05-16Initial working version.Bruce Hill
2018-05-16Converted DictEntry to be an actual tree, instead of a pseudo-tree, made ↵Bruce Hill
'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-15Cleaning up comments.Bruce Hill
2018-05-10Cleanup: removed "File" type trees (now just Block), overhauledBruce Hill
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-09Renamed "export" to "external"Bruce Hill
2018-05-09Added tentative support for luajit (depends on pure-lua LPEGBruce Hill
implementation).
2018-05-04Removing varargs from free var functions.Bruce Hill
2018-05-03Cleanup of unnecessary parens in generated lua code for math operations.Bruce Hill
2018-04-27Better text interpolation/handling of "\". Also added syntax support forBruce Hill
(statement; statement)
2018-04-25Removing end-of-line ":" and "(..)" for blocks (they just useBruce Hill
indentation now).
2018-04-25Got nomsu codegen working again.Bruce Hill
2018-04-19All tests passing (except object)Bruce Hill
2018-04-18More cleanup, slowly working through operators/control_flowBruce Hill
2018-04-17Moving tree_to_lua into each of the Nomsu tree types, which are now inBruce Hill
their own file.