aboutsummaryrefslogtreecommitdiff
path: root/lib/control_flow.nom
AgeCommit message (Collapse)Author
2018-01-23Added implicit local declarations and new syntax of %var <- %value.Bruce Hill
2018-01-19Updated and fixed up how_do_iBruce Hill
2018-01-19Refactored syntax a bit so that ":" isn't necessary for a block, and canBruce Hill
be used for inline expressions instead. Also, dict literals now use ":" instead of "=".
2018-01-18Initial commit of object oriented classes.Bruce Hill
2018-01-17Completely fixed/reworked tree_to_nomsu, and it's okay right now.Bruce Hill
2018-01-12Optimized loops to use local vars in loop definitions when possible.Bruce Hill
2018-01-12Switched to use load() with environment table instead of passing inBruce Hill
nomsu to everything. This has some nice code cleanliness benefits.
2018-01-11Reshuffled all the library code into files that make more sense andBruce Hill
cleaned up some of the library code.
2018-01-11Added "local %" macro as a stopgap for locals.Bruce Hill
2018-01-11Fixed ipairs->pairs to make dict iteration work.Bruce Hill
2018-01-11Removed some dead code and streamlined the API a bit. Also addedBruce Hill
training wheels for ease of transitions.
2018-01-11Renamed "require %" to "use %"Bruce Hill
2018-01-11Added "%'s id" to use UUIDs and changed "% = %" to "set % = %" and someBruce Hill
other misc.
2018-01-11Renamed rule % = % to action % %Bruce Hill
2018-01-10Pretty much mostly working.Bruce Hill
2018-01-09Cleaned up metaprogramming to go "compile to" -> "rule =" -> "parse as".Bruce Hill
This speeds things up a bit, and is more intuitive.
2018-01-08Modernized the codebase a bit to include "immediately:" for immediatelyBruce Hill
running code before further parsing takes place. That means that in the default case, whole files can be run at once, which makes all but the weirdest edge cases make a lot more sense and operate smoothly.
2018-01-07Reworking some stuff so that functions only allow expressions to beBruce Hill
return values with either an explicit "return" statement or if they're the only line in the function, and the line is an expression.
2018-01-07Some overhaul of binary operators so that arbitrary math patterns workBruce Hill
fine.
2018-01-05More cleanup of vars.XX -> \%XXBruce Hill
2018-01-03Reworked {} a bit and added dicts to the core language. Did some moreBruce Hill
testing on string interpolations too.
2017-12-30Got everything mostly working.Bruce Hill
2017-12-13Got it working.Bruce Hill
2017-12-04Some stuff changed to allow escaped args and some other ports from theBruce Hill
two_defs branch.
2017-10-23Removed some unnecessary semicolons on keywords.Bruce Hill
2017-10-19Abbreviated "lua code" to "lua>" and "lua expr" to "=lua" and "luaBruce Hill
block" to "lua do>"
2017-10-13Changed tokenizing to treat symbols as their own things.Bruce Hill
2017-10-13Improved code generation for "when" statements using elseif, andBruce Hill
improved code generation for loops by omitting goto labels when not used.
2017-10-12Added chain and "with".Bruce Hill
2017-10-07Added "unless" to core.Bruce Hill
2017-10-02Updated to undo some of the block/thunk stuff. Thunks are thunks, andBruce Hill
expressions can be grouped with parens, and they have a clear distinction.
2017-09-29More stuff is working more better.Bruce Hill
2017-09-28Kinda mostly working, except for closure vars like in lib/secrets.nom.Bruce Hill
2017-09-26Making forward progress.Bruce Hill
2017-09-24massive overhaul, compiler kinda works.Bruce Hill
2017-09-22Renamed compiler -> nomsu for concision and clarity.Bruce Hill
2017-09-22Cleaned up code generation to have less cruft.Bruce Hill
2017-09-22Did that.Bruce Hill
2017-09-21Everything fixed up and some reduced lua codespew too!Bruce Hill
2017-09-21Another overhaul, this time pulling all the chunks of the core lib intoBruce Hill
their own files.