Commit Graph

88 Commits

Author SHA1 Message Date
Richard Harrington
63256d8691 rearranged order of arguments to parse, parse-token and assemble, to make more sense 2013-08-04 22:08:20 -04:00
Richard Harrington
37deec17de rearranged dependencies so that all calls to foundry/assemble are made from brain/init-brain, and higher levels pass in source code to init/brain 2013-08-04 21:36:33 -04:00
Richard Harrington
1d884c5de2 got push-test (pushing to register) to work in brain-test 2013-08-03 14:21:26 -04:00
Richard Harrington
5865a9f570 moved 'get-world' functionality (allows world-finding by world-tick-idx
and robot-idx) into helper function in brains-test
2013-08-03 14:14:32 -04:00
Richard Harrington
981d2fe23b got gosub-test working 2013-08-03 14:01:53 -04:00
Richard Harrington
817a3e057d basic tests of branching and arithmetic passin, in brain-test 2013-08-03 12:30:47 -04:00
Richard Harrington
e2b4369960 continuing on apace with the gnarly refactoring (pretty much despairing of decent commit messages at this point) 2013-08-03 03:39:18 -04:00
Richard Harrington
67c599062c fully qualified robotwar.game-lexicon in foundry-test 2013-08-02 23:10:40 -04:00
Richard Harrington
08dcf38214 refactored, changed module names, untangled dependencies between kernel language and register names. Also removed 'repl' 2013-07-31 20:55:15 -04:00
Richard Harrington
e1e25fcbe7 moved tokens' :line and :pos fields into the metadata map, refactored to preserve metadata, wrote a test for that 2013-07-31 17:38:33 -04:00
Richard Harrington
0d2ef55c14 added test for INDEX/DATA pair of registers 2013-07-31 15:42:04 -04:00
Richard Harrington
dacfaf34db refactored exec-test and wrote new test for pushing and pulling from RANDOM register 2013-07-31 15:33:09 -04:00
Richard Harrington
b331a43f79 changed name 'compile' to 'assemble', now don't have to exclude loading of clojure.core/compile 2013-07-31 14:30:40 -04:00
Richard Harrington
7e3391fc11 got rid of the special 'nth-state' helper function in exec-test.clj 2013-07-30 14:59:26 -04:00
Richard Harrington
a093273a12 changed name of gosub-test 2013-07-30 11:53:27 -04:00
Richard Harrington
4276409d9c wrote init-world function to create a world-state 2013-07-30 11:44:36 -04:00
Richard Harrington
e888baf4e2 added tests for robot-tick 2013-07-29 17:30:35 -04:00
Richard Harrington
a964ff9815 fixed bug causing ENDSUB not to parse properly; also added tests 2013-07-29 15:09:51 -04:00
Richard Harrington
27eeb56e83 altered parse and compile to add beginnings of error-checking framework (also added tests for this) 2013-07-29 12:57:20 -04:00
Richard Harrington
36e54daaed added support for parsing multiple lines with comments; also added line number metadata, and tests for all this 2013-07-29 00:40:22 -04:00
Richard Harrington
fb6e502b8b rewrote tests for new namespaces 2013-07-28 22:58:48 -04:00
Richard Harrington
9bfa7c213e restored full 'robotwar' name everywhere, instead of 'rw' 2013-07-28 22:37:18 -04:00
Richard Harrington
dbd1007a84 shortened main namespace name from robotwar to rw 2013-07-28 01:31:03 -04:00
Richard Harrington
4cfac7d461 wrote map-labels function to map the labels in a token-string. including tests. 2013-07-22 23:03:57 -04:00
Richard Harrington
14a77a2f8b added tests for rw-compile 2013-07-22 22:45:13 -04:00
Richard Harrington
411b9013ef changed robotwar files & folders to remove 'hs-' prefix 2013-07-19 16:34:44 -04:00
Richard Harrington
b136663305 pulled the disambiguation of minus signs out of the parsing step, put it afterwards 2013-07-16 15:14:06 -04:00
Richard Harrington
4d368578cb separated out the comment-stripping step completely from the lexing step 2013-07-14 23:01:37 -04:00
Richard Harrington
3b03274c2e added back stripping of comments which had been lost when switching to regex 2013-07-13 13:29:36 -04:00
Richard Harrington
7337fa36cd wrote new tests for multi-token parsing 2013-07-13 11:26:42 -04:00
Richard Harrington
05459307c7 changed return value of parser's error helper function to actual error message 2013-07-13 10:59:13 -04:00
Richard Harrington
4469725e6c wrote tests for parse-token and its helper functions 2013-07-13 00:10:33 -04:00
Richard Harrington
08f6950203 changed name of lexing token key from token to token-str 2013-07-12 23:48:28 -04:00
Richard Harrington
b0fe08bd80 got rid of extraneous digit? function 2013-07-12 17:38:56 -04:00
Richard Harrington
907d4d36d4 removed ability to distinguish between unary and binary '-' operators in lexing function 2013-07-11 15:25:38 -04:00
Richard Harrington
ee84ffedbf added support for multi-line lexing 2013-07-11 15:05:38 -04:00
Richard Harrington
7b326c33f5 added tests for lex function 2013-07-08 17:27:03 -04:00
Richard Harrington
e9709abf39 first commit 2013-06-26 15:59:01 -04:00