aboutsummaryrefslogtreecommitdiff
path: root/code_obj.moon
AgeCommit message (Collapse)Author
2019-01-15Removed debug code.Bruce Hill
2019-01-10Major overhaul of how modules and environments work, along with someBruce Hill
steamlining and tweaks to the makefile. Version bump: 6.14.13.8
2019-01-01Misc changes, including text indented interpolations are now indentedBruce Hill
relative to the text, not the opening '("', code objects can now remove all free vars, the REPL uses global vars. Error API is changing a bit.
2018-12-30Fixes for: indented strings ending in ", peeking at code object textBruce Hill
before modifying them, and major upgrades to the nomsu codegen, including support for indented inline arguments (instead of using "\n..") and just generally better line wrapping, including finally good rules for when to use indented text (for almost all cases).
2018-11-29Renamed append/concat_append to add/concat_add for Code objects.Bruce Hill
2018-11-17In-progress (but working) overhaul of some elements including: functionBruce Hill
calls, lib/thing.nom API, multi-assignments, varargs, etc.
2018-11-09No longer passing `tree` to every compile action. Now, you can justBruce Hill
return a LuaCode object, and it will automatically get a source from `tree` if it didn't already have a source. Plus some fixes/cleanup.
2018-11-09Lots of cleanups, including expanded use of (... compiles to "textBruce Hill
literal") shorthand, deprecating Lua value, and more use of Lua "..." with text interpolations.
2018-11-08Major overhaul, splitting nomsu_compiler into nomsu_environment,Bruce Hill
nomsu_compiler, and nomsu_decompiler. Also added comprehensions.
2018-11-06Removed utils.lua, simplified some metaprogramming stuff, added native supportBruce Hill
for calling functions with (%a %b %c) instead of (call %a with [%b, %c]), renamed _List -> List, _Dict -> Dict, improved example code.
2018-11-02Changed stub convention to (foo 1 baz 2) -> foo_1_baz instead ofBruce Hill
foo_1_baz_2, removed "smext", made some cleanup changes.
2018-09-28Fully working, I think? (with a lot of shims)Bruce Hill
2018-09-28Slightly more robust.Bruce Hill
2018-09-18Got rid of repr() use and replaced with :as_lua() or :as_nomsu() in asBruce Hill
many places as possible.
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-29Intermediate step in upgrading to 3.6. Fixed a bug with upgradingBruce Hill
methods.
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-23Deduplicating code a bit.Bruce Hill
2018-07-20Simplifying and correcting the 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-18Updating to version 2.4.4.3, with new syntax for multi-statement 'if'Bruce Hill
and switch statements.
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-13Minor changes.Bruce Hill
2018-07-12Fixing up comments, slowly.Bruce Hill
2018-07-10Improving codegen line wrapping.Bruce Hill
2018-07-10Fixed up line numbers for generated code.Bruce Hill
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-28Improvements to nomsu codegen (comments are now retained) and someBruce Hill
improvements to handling of stdin and fixes for error reporting.
2018-06-26Cleaning up metaprogramming a bit and fixing/adding test for recursionBruce Hill
control flow.
2018-06-19Lots of cleanup.Bruce Hill
2018-06-18More streamlining and cleanup.Bruce Hill
2018-06-18Initial working version.Bruce Hill
2018-06-14More streamlining and cleanup. Especially for core/metaprogramming.nomBruce Hill
2018-06-12Working version.Bruce Hill
2018-06-12Lots of optimizations and simplifications, especially towards gettingBruce Hill
better performance on luajit.
2018-06-12Removed dependency on 'immutable' library. This lets LuaJIT do moreBruce Hill
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-05Updating documentation.Bruce Hill
2018-06-04Optimizations and cleanup. Build script now fails on first error andBruce Hill
uses the precompiled versions it has just compiled.
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-30Moved as_lua_id() onto 'string'Bruce Hill
2018-05-29Almost-working reimplementation of source code mapping.Bruce Hill
2018-05-29Cleaned up some asserts for performance.Bruce Hill
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-26Moving back to capturing tables in LPEG and everything is a Source, notBruce Hill
string.
2018-05-26Re-added sources.Bruce Hill
2018-05-24Consolidating code obj code and expunging all [[..]]-style lua strings.Bruce Hill