aboutsummaryrefslogtreecommitdiff
path: root/lib/core
AgeCommit message (Collapse)Author
2019-03-13Made iteration easier to work with by using .__inext and .__next forBruce Hill
custom iteration, and a custom ipairs() and pairs() to use that.
2019-03-09Consolidating iteration around iterable ranges (and case-specificBruce Hill
optimizations when possible).
2019-03-09Tidying upBruce Hill
2019-03-09Improved testsBruce Hill
2019-02-06Moving to better, more centralized versioning system. Now the NomsuBruce Hill
version is just defined as a list at the top of nomsu.moon, and uses X.Y.Z form instead of X.Y.Z.W. Added a ([...], from 2) method and a ([...], up to 5) method, and fixed a few upgrade bugs.
2019-02-05Bunch of changes:Bruce Hill
- Added shebangs to generated code output - SyntaxTree:map() -> SyntaxTree:with(), and corresponding changes to metaprogramming API - Added (return Lua 1) shorthand for (return (Lua 1)) - (1 and 2 and 3) compile rule mapping to -> (1 and (*extra arguments*)) - Don't scan for errors, just report them when compiling - Syntax changes: - Added prefix actions (e.g. #$foo) - Operator chars now include utf8 chars - Ditch "escaped nomsu" type (use (\ 1) compile action instead)
2019-02-05Added more parens and semicolons, and made "#" work with "..."Bruce Hill
2019-02-02Added version to shebangBruce Hill
2019-02-02Added Range (1 to 3) and a bunch of tests for inverse dicts.Bruce Hill
2019-01-29Switched to have colors/utf8 be optional, fixed an issue with currentlyBruce Hill
running files leaking when errors occurred (causing spurious circular import errors), and improved tutorial.
2019-01-27Removed namespace colliding of `* is not *` (using the isinstanceBruce Hill
version, not the != version)
2019-01-27Added extra test for safety.Bruce Hill
2019-01-27Added time module for real.Bruce Hill
2019-01-27Added Time library to core.Bruce Hill
2019-01-27Fail no longer prepends 'Failure:' automatically, now fail_at() does ifBruce Hill
no prefix is there.
2019-01-25Added metatables for bool, number, function, coroutine. AddedBruce Hill
run-time check to make sure precompiled code used the same version of Lua. Methods can now be used in (* compiles to *), etc.
2019-01-23'say' is now it's own action, rather than a 'print' clone, which lets itBruce Hill
handle multiple arguments better.
2019-01-23Switching to use _1_as_lua()Bruce Hill
2019-01-23Added _1_as_text(), which converts true -> yes, false -> no.Bruce Hill
2019-01-23Added honeypot compile action that detects if you try to do an 'else'Bruce Hill
without an 'if' and gives a helpful message.
2019-01-22Moved all the text method stuff into text.moon instead of splittingBruce Hill
across string2/containers. Modified the type stuff to output better type names and use (a Dict) and (a List) instead of (Dict) and (List). (Text) now also has a proper constructor. (assume) now also handles a bunch of different assumptions with smart error messages.
2019-01-18Better error handling.Bruce Hill
2019-01-18Added `tree` back as a parameter to compile actions, which helps withBruce Hill
better error reporting, e.g. for (fail) (no arguments). Overall better error reporting now. Also added shorthand ("Action" tree with ...) for (SyntaxTree {.type = "Action", .1 = ...}).
2019-01-16Overhauling OO-API a little to make it more minimalistic.Bruce Hill
2019-01-16Moved things into core/Bruce Hill
2019-01-16Better error messaging (using pretty_error in more places)Bruce Hill
2019-01-15Updating to v6.15, which includes "external (...)" instead of separateBruce Hill
'externally' versions of stuff, and some auto-formatting.
2019-01-14Added missing newlineBruce Hill
2019-01-14Added (SyntaxTree {...} ...) shorthand for SyntaxTree{..., ...} andBruce Hill
added some shebangs.
2019-01-14Overhaul in progress, mostly working. Moved all the nomsu packages intoBruce Hill
lib/, including core/*. Changes to how nomsu environments and importing work.