Commit Graph

2413 Commits

Author SHA1 Message Date
6b9c472bec refactor load_parfait
so debugger can grab and wire it easily
2015-11-08 18:35:10 +02:00
6f69995284 stab at inter to string
wip
2015-11-08 17:11:03 +02:00
c38775e933 add set_internal
and the set_slot with register
very much like the get_slot for get_internal
2015-11-08 17:10:36 +02:00
ede7639861 forgot to link tests in
so code climate complained, oh now
2015-11-08 17:09:28 +02:00
64d99d5e68 didn't need big decimal require 2015-11-08 15:18:39 +02:00
d6108e7b3a fix interpreter overflow issue
flag set for bigness, result reduced
tests for + and *
fixed fibs tests
2015-11-08 15:15:55 +02:00
6ea698d397 save some to_s code 2015-11-08 14:30:42 +02:00
cf05e7553a rework interpreter test framework
remove lots of copy paste
2015-11-08 14:30:28 +02:00
37564d9c2e implement message pseudo variable (like self)
too easy
also simplified some tests
2015-11-08 13:55:38 +02:00
69918c8e88 add some message and remove fields
those fields are already present in the classes
(in the future they should be defined in some and integrated to ruby,
but that would mean parsing to boot and parsing doesn’t yet work on
opal)
2015-11-08 13:54:58 +02:00
502cfa357d implement and test field access 2015-11-08 13:39:13 +02:00
b443103ea4 using class fields
instead of internal_get
2015-11-08 01:02:47 +02:00
6cd95ee933 more layout tests, seeing class names on stdout 2015-11-08 00:55:37 +02:00
9fd7c79cfb mixed up class and meta, fixed 2015-11-08 00:55:10 +02:00
bcc366f8fd bit more soml 2015-11-08 00:54:47 +02:00
3e4dcd35c7 better no method no super handling
also revealed bug in booting
2015-11-08 00:54:24 +02:00
ab7e517e9e slightly tighter parfait tests 2015-11-07 22:26:06 +02:00
f11e8f0a13 fix all the test
many are off course affected by call sequence changes
2015-11-07 22:20:21 +02:00
5ddc96718b slight call logic modification
simplification, new model is such that the upon start the method:
has a message in r0, works on it and returns to the return address.

Everything else is up to the caller
2015-11-07 21:59:39 +02:00
f2c7ed827d simplify the __init
admittedly more source code, but half the runtime
mainly just using message (not new)
made possible by call sequence change
2015-11-07 21:58:19 +02:00
2315ad6920 minor cleaning 2015-11-07 21:55:04 +02:00
8c68ffc7a4 fixing indexes makes test work
forgot my own rule: all parfait works in 1 based lists
2015-11-07 20:10:55 +02:00
a1aa6b58ac resolve methods, don't just get them
i.e. down the ladder we go
2015-11-07 19:39:15 +02:00
7523bac80a add layout and class accessor and test 2015-11-07 19:38:52 +02:00
484e2d19d4 allow for registers in get slot 2015-11-07 19:38:03 +02:00
1d07c1fb95 fix super class with name mixup 2015-11-07 19:37:38 +02:00
37928b8591 rename internal get/set functions
mainly because the salaam parser chokes on internal…
2015-11-07 17:40:59 +02:00
8aabff6b37 get layout test
start of copying the ruby parfait tests
lots can be done with string output and return value
2015-11-07 17:39:17 +02:00
50b03a5e94 load parfait soml files
No dir glob for precise order
2015-11-07 17:38:27 +02:00
d878ce00d8 framework for parfait runtime testing
with interpreter for now
later with arm exec support
2015-11-07 17:37:41 +02:00
708cdace17 implement indexed object access
one of the few functions that can’t be coded
(or the design specifically is such that it can’t, in c it would be
self[index],
or, worse *(self + index) )
2015-11-07 17:36:28 +02:00
35afe88ede allow get_slot with two registers
before was register and number, but for runtime that doesn’t work
2015-11-07 17:34:41 +02:00
c9c0f66d79 rename test/parfait
to then write parfait test on the runtime
2015-11-07 14:04:38 +02:00
9ebe28450b add global variable space
could in the long run move spaces functionality to the class
and since the class is global anyway, wouldn’t need this
2015-11-07 12:19:04 +02:00
b1939e9828 rename helper 2015-11-07 12:18:08 +02:00
fd7e4afb2f small meta related changes 2015-11-07 00:14:10 +02:00
42c404802d more class function testing 2015-11-07 00:13:57 +02:00
46e1a112ab metaclass moves down to object 2015-11-07 00:12:17 +02:00
204200b92a metaclass is back
this time with a real purpose and implementation as the intermediary
As the interface to the layout and for replacing an edited layout
2015-11-07 00:11:56 +02:00
ebcc15d314 testing fibo 2015-11-06 14:24:57 +02:00
eae5cac4b5 check returns on tests 2015-11-05 17:00:41 +02:00
4eb3d9029a use logger 2015-11-05 16:50:00 +02:00
13d0747b45 test the log_level too 2015-11-05 14:05:12 +02:00
1309ea37de fibonacci while works just as well now
surprisingly much faster though,
2015-11-05 13:37:08 +02:00
aad50021fe more messages for recursive fibs 2015-11-05 12:23:11 +02:00
4014ad27fe fix and test return
return was in the wrong message
better tests now
2015-11-05 12:22:48 +02:00
ff759bf0c1 increase message size
message size is somewhat like stack size,
but 1-1 related to how deep it can be, now 50 calls
2015-11-05 12:12:15 +02:00
8310bc4985 fix while tests now that while is fixed 2015-11-04 20:28:02 +02:00
32275f4d48 fix interpreter test 2015-11-04 20:27:48 +02:00
642dcb065a fix while statement
logic was broken, or inversed
had to lay the code out a bit funny, but it works and makes sense
2015-11-04 20:23:26 +02:00