Bruce Hill
85ef9534e3
Added pattern matching for text, and comprehension versions of that and
...
file walking.
2018-07-09 17:14:05 -07:00
Bruce Hill
65dc1f2196
Cleaning up metaprogramming a bit and fixing/adding test for recursion
...
control flow.
2018-06-26 15:53:00 -07:00
Bruce Hill
ad342b63b7
Simplifications/streamlining the Make process, and cleaning up some of
...
how command line interaction and `use %` work.
2018-06-24 16:11:40 -07:00
Bruce Hill
9f08215dfb
Moved console colors from core/ into lib/
2018-06-23 18:04:23 -07:00
Bruce Hill
863983202c
Fixed up nomsupath behavior and refactored file stuff into its own file.
2018-06-23 17:22:43 -07:00
Bruce Hill
86a3219e7f
Cleanup of some metaprogramming stuff, as well as adding support for
...
"package.nomsupath" to search for files in different locations, and
prioritizing use of "luafilesystem" over system calls.
2018-06-21 19:13:47 -07:00
Bruce Hill
16d127abb5
Initial working version.
2018-06-18 15:44:35 -07:00
Bruce Hill
1a6e28e835
Improvements to object system.
2018-06-15 00:17:09 -07:00
Bruce Hill
b12744d831
Some cleanup and fixes. Simplifying a lot of code, and extending the
...
flexibility of scoping. Redesigned Object system too.
2018-06-14 23:25:34 -07:00
Bruce Hill
49f1eb3d08
Reshuffling some files.
2018-06-14 22:17:37 -07:00
Bruce Hill
e7bdc35aa8
Cleanups to try/catch logic and object logic.
2018-06-04 17:23:13 -07:00
Bruce Hill
7cd4f276b7
Added todo
2018-05-30 17:27:10 -07:00
Bruce Hill
b53516c47c
Simplified and correctified lib/object (though the codegen still need
...
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-30 17:21:19 -07:00
Bruce Hill
624fcdcc7e
Moved as_lua_id() onto 'string'
2018-05-30 13:46:54 -07:00
Bruce Hill
8cb2788e0d
Re-added sources.
2018-05-26 15:04:38 -07:00
Bruce Hill
446892d11e
Consolidating code obj code and expunging all [[..]]-style lua strings.
2018-05-24 16:13:46 -07:00
Bruce Hill
ba76a35e84
Fixed up file hash lib.
2018-05-24 15:33:12 -07:00
Bruce Hill
2e345e271f
Misc changes, fixed up Object lib and tests.
2018-05-24 14:57:35 -07:00
Bruce Hill
3ffeaf1f5d
Removed "for all"-style iteration and changed "for % from 1 to 10"-style
...
to "for % in 1 to 10" for consistency.
2018-05-15 20:33:07 -07:00
Bruce Hill
0a95a264e5
Cleaning up comments.
2018-05-15 18:56:00 -07:00
Bruce Hill
1a755ddee8
Added tentative support for luajit (depends on pure-lua LPEG
...
implementation).
2018-05-09 13:35:04 -07:00
Bruce Hill
5d59d510cd
Removing end-of-line ":" and "(..)" for blocks (they just use
...
indentation now).
2018-04-25 16:31:09 -07:00
Bruce Hill
34a2f50ebc
Deleted habit breaker.
2018-04-20 17:00:33 -07:00
Bruce Hill
da33269c30
All tests passing (except object)
2018-04-19 17:23:54 -07:00
Bruce Hill
d42d20c50a
Re-added callstack callsite info. It's a bit hacky, but better than
...
nothing.
2018-04-09 18:58:27 -07:00
Bruce Hill
02af19153e
Moved over to have tree metadata stored outside the tree. This paves the
...
way for programmatically generating trees more easily.
2018-02-08 16:23:23 -08:00
Bruce Hill
3661754ed9
Reverted to ACTIONS instead of ACTION and added 'show lua %' macro.
2018-02-06 22:07:11 -08:00
Bruce Hill
d02b4b8718
Added a bunch of metamethod stuff.
2018-02-05 15:11:49 -08:00
Bruce Hill
505fec2a61
Restructured the nomsu files to group all the essentials into core/ and
...
all the optionals into lib/. lib/core.nom and tests/all.nom are no
longer needed now.
2018-02-02 15:49:42 -08:00
Bruce Hill
a387fd86a8
Added colons for aesthetics.
2018-01-31 15:31:13 -08:00
Bruce Hill
b1406a3203
Removed "core_defs"
2018-01-30 16:41:51 -08:00
Bruce Hill
0563571625
Overhaul of indentations. Now strictly requiring exactly 4 spaces
...
everywhere, and supporting indented string interpolations.
2018-01-30 15:11:18 -08:00
Bruce Hill
d7abcba34d
Fix for bad indentation.
2018-01-30 15:10:29 -08:00
Bruce Hill
27c8024888
Added numeric-for list comprehension
2018-01-29 15:14:50 -08:00
Bruce Hill
90c56d3135
Added a ton of tests for virtually all the functionality. Helped me find
...
and fix a lot of latent problems.
2018-01-26 20:20:38 -08:00
Bruce Hill
214b3f9186
Removed nomsu:write() and nomsu:writeln() and replaced with just plain
...
ol' print()
2018-01-26 15:02:32 -08:00
Bruce Hill
0c0fb98389
Added some training wheels for functions.
2018-01-25 18:08:04 -08:00
Bruce Hill
90b2888d46
Fixed up how_do_i with updated syntax.
2018-01-25 17:44:09 -08:00
Bruce Hill
c79bea4401
Overhaul of compiling API (eliminated some of the expr/statements
...
helpers and forced the use of {expr=..., locals=...}-type syntax. This
helped fix up all of the cases like loops where locals were being
mishandled and led to some cleaner code.
2018-01-25 17:36:05 -08:00
Bruce Hill
f769351556
Updated and improve syntax for some stuff. Also added string indexing
...
like in python, including slices.
2018-01-24 13:13:26 -08:00
Bruce Hill
d173e9ae88
Fixed id for nil/NaN and cleaned up collection metatable stuff.
2018-01-24 12:38:09 -08:00
Bruce Hill
566b7d09c8
Updated training wheels with new syntax and print().
2018-01-24 03:00:31 -08:00
Bruce Hill
42d950f7b4
Fix for some old syntax.
2018-01-24 02:55:49 -08:00
Bruce Hill
a33cb2598f
Cleaned up code duplication in 'compile % to %' and 'compile % to code
...
%' and improved generated lua output for the common case (a text value).
2018-01-24 01:38:55 -08:00
Bruce Hill
30639f52e1
Added "export" for explicitly non-local variables.
2018-01-23 19:42:14 -08:00
Bruce Hill
49f0e95571
Prevented redeclaration of function arguments as locals.
2018-01-23 19:29:11 -08:00
Bruce Hill
6d11354b3f
Added implicit local declarations and new syntax of %var <- %value.
2018-01-23 19:22:45 -08:00
Bruce Hill
376dd65278
Updated and fixed up how_do_i
2018-01-19 18:13:13 -08:00
Bruce Hill
4764842fe6
Updated class.nom for new syntax.
2018-01-19 17:32:01 -08:00
Bruce Hill
c1ac0635fd
Refactored syntax a bit so that ":" isn't necessary for a block, and can
...
be used for inline expressions instead. Also, dict literals now use ":" instead
of "=".
2018-01-19 17:30:39 -08:00