Commit Graph

203 Commits

Author SHA1 Message Date
Richard Harrington
64ac3c743b fixed various bugs in kinematics calculations in robot 2013-08-10 17:04:44 -04:00
Richard Harrington
2846ed4151 added iterate-worlds convenience function to world 2013-08-10 17:03:58 -04:00
Richard Harrington
7e040dfcf5 expanded core.clj inspection functions to cover robot, world and worlds 2013-08-10 15:55:26 -04:00
Richard Harrington
2d7388f00f Merge branch 'assembler' -- this is a bad commit; should have merged this branch years ago 2013-08-10 14:42:34 -04:00
Richard Harrington
cbcf620a00 added read-write test to register-test 2013-08-10 14:41:05 -04:00
Richard Harrington
43125f0e26 added test to read-only test section of register-test
new test checks to make sure the appropriate robot field
got written to.
2013-08-10 14:40:10 -04:00
Richard Harrington
99528fe9ba added read-only-test to register-test 2013-08-10 14:29:52 -04:00
Richard Harrington
d07ab0607c added get-registers helper function to registers-test 2013-08-10 14:29:17 -04:00
Richard Harrington
d0a1933b7d set up midje (mainly for auto-testing, for the time being) 2013-08-10 14:28:17 -04:00
Richard Harrington
0b007c9b53 added random-test to register-test 2013-08-10 13:41:42 -04:00
Richard Harrington
9e61c987c3 added index/data test to register-test 2013-08-10 13:28:28 -04:00
Richard Harrington
2f85cef477 removed random and index/data tests from brain-test 2013-08-10 13:27:48 -04:00
Richard Harrington
1424d47a4c started register-test namespace, with storage-register-test 2013-08-10 13:13:40 -04:00
Richard Harrington
94cf5b3f47 added logic in assembler to distinguish between registers and labels
and thus succeeded in getting rid of the register dependency
in the assembler namespace.
2013-08-10 01:34:03 -04:00
Richard Harrington
528b18a45d fixed bugs in core.clj ppt inspection function, also made it more pretty 2013-08-10 00:55:17 -04:00
Richard Harrington
1cf9f7e42e put test programs into their own file; altered brain-test and core.clj accordingly 2013-08-09 22:01:56 -04:00
Richard Harrington
7618378083 removed unnecessary dependency on register in brain 2013-08-09 16:27:10 -04:00
Richard Harrington
2d7754c7f3 fixed merge conflict 2013-08-09 16:11:16 -04:00
Richard Harrington
c802fc811e fixed desired-v-x and desired-v-y situation
before, pushes to SPEEDX and SPEEDY were overwriting
the actual :v-x and :v-y fields on the robot,
so I made new :desired-v-x and :desired-v-y fields
to hold the aspiration for what we want the speed to be
(which might not be accomplished for several ticks)
2013-08-09 16:07:18 -04:00
Richard Harrington
6e6fd957f9 removed unnecessary assoc path functions in register 2013-08-09 16:02:40 -04:00
Richard Harrington
30a1ed781b switched to system where registers are part of the brain, not the robot 2013-08-09 15:58:14 -04:00
Richard Harrington
171fe5d5b2 fixed RANDOM register, was writing to robot-field still; now writes to register itself 2013-08-09 15:57:16 -04:00
Richard Harrington
11a96e1c52 minor whitespace issue 2013-08-09 15:27:05 -04:00
Richard Harrington
167c8e73ee changed name of 'reg-names-by-idx' back to 'reg-names' 2013-08-09 15:26:02 -04:00
Richard Harrington
ac2c87325a changed name of reg-names to reg-names-by-index
to reflect its sole role: to be a lookup for the
DATA/INDEX pair system
2013-08-09 14:58:24 -04:00
Richard Harrington
98f7958e6a minor whitespace change 2013-08-09 14:55:47 -04:00
Richard Harrington
ea5ca28e45 put storage-reg-names inline in init-register, instead of at beginning of file 2013-08-09 14:55:30 -04:00
Richard Harrington
135aeb54a4 fixed bugs causing test of RANDOM register to fail 2013-08-09 14:43:33 -04:00
Richard Harrington
ccf23449fe restored loading of register namespace into brain 2013-08-09 14:35:53 -04:00
Richard Harrington
b9bfca221d started reworking brain 2013-08-09 14:34:00 -04:00
Richard Harrington
e6f1205164 finished reworking the RANDOM register to store max-value in the
register, not the robot
2013-08-09 14:32:17 -04:00
Richard Harrington
8620ea8bac renamed records in register namespace, to reflect where data is being
stored
2013-08-09 14:30:14 -04:00
Richard Harrington
d3ead6f74c cleaned up namespace declarations in assembler and brain 2013-08-09 13:58:56 -04:00
Richard Harrington
3fe4444f7a ATTN: commits now contain internal info. Changed register system to
mostly an interface.

Removed :val field from all registers except storage registers & INDEX.

Some of the other registers were already quite specialized, but
the ones that weren't -- the ones that relied on :val fields in the
register -- are now just interfaces to attributes stored on the top
level of the robot.
2013-08-09 00:51:42 -04:00
Richard Harrington
db63955567 removed passing of attributes from robot to init-register function. don't need them now. 2013-08-09 00:38:21 -04:00
Richard Harrington
cd2fc415ea fixed slight bug in robot-field-read-register, in register namespace 2013-08-08 23:53:07 -04:00
Richard Harrington
8e2b0bcb78 fixed merge conflict 2013-08-08 23:40:03 -04:00
Richard Harrington
abbc60d81c added 'random' record to register, switched to mixin system for most records, got all existing tests working 2013-08-08 23:38:05 -04:00
Richard Harrington
77f52915d2 added 'random' record to register, switched to mixin system for most records, got all existing tests working 2013-08-08 23:24:59 -04:00
Richard Harrington
74ab6affe3 fixed bug in pathfinder convenience functions in register 2013-08-08 23:23:36 -04:00
Richard Harrington
4d7fdb0cfb converted registers to protocols and records. 2/3 finished. 2013-08-08 01:10:35 -04:00
Richard Harrington
382a70bd34 created register namespace, moved game_lexicom stuff into it 2013-08-07 11:36:03 -04:00
Richard Harrington
dc5531b3b5 removed kernel-lexicon dependency, moved all its data structures into assembler 2013-08-07 10:21:21 -04:00
Richard Harrington
f65ee493a9 added todo 2013-08-06 20:08:05 -04:00
Richard Harrington
b43eb26b37 fixed bug in robot.clj, all previous tests now working 2013-08-06 19:21:35 -04:00
Richard Harrington
f1b94518f7 Merge branch 'master' into robot 2013-08-06 18:35:44 -04:00
Richard Harrington
94c069116f changed parameter-pass-in format to ppt in core.clj, to registers flattened in the argument list 2013-08-06 18:35:27 -04:00
Richard Harrington
7fd4baa3c2 fixed bug in ppt in core.clj causing it to refer to old hard-coded info rather than passed-in parameters 2013-08-06 18:35:05 -04:00
Richard Harrington
2b983b6080 in the midst of some changes to robot 2013-08-06 18:17:26 -04:00
Richard Harrington
9c4a576702 added to inspection functions in core.clj 2013-08-06 18:01:57 -04:00