Torsten Ruger
|
a5afca10f6
|
don't pass machine around, its global
|
2015-11-12 20:02:44 +02:00 |
|
Torsten Ruger
|
6f0d6d831e
|
update arm and implement most operators
multiplication wasn’t implemented
and division isn’t part if arm
neither is rotate by register
|
2015-11-12 20:02:14 +02:00 |
|
Torsten Ruger
|
351a747bfd
|
mod and div for int
|
2015-11-11 20:36:40 +02:00 |
|
Torsten Ruger
|
1e7935bf85
|
implement byte access for some word
wouldn’t have been possible without the ruby version
|
2015-11-11 20:36:07 +02:00 |
|
Torsten Ruger
|
8528fae785
|
add the new tests
|
2015-11-10 19:12:50 +02:00 |
|
Torsten Ruger
|
c92814440f
|
fix integer to_s and put, with tests
|
2015-11-10 19:09:17 +02:00 |
|
Torsten Ruger
|
760a4beb86
|
fix some word with tests
|
2015-11-10 19:08:48 +02:00 |
|
Torsten Ruger
|
da9dacffb2
|
shorten fibo test a bit
|
2015-11-10 11:44:55 +02:00 |
|
Torsten Ruger
|
9ab7b476d5
|
opal fix and minor
|
2015-11-09 23:27:15 +02:00 |
|
Torsten Ruger
|
b2de1c6d79
|
minor fixes
|
2015-11-08 23:58:54 +02:00 |
|
Torsten Ruger
|
f746218765
|
reinstate word creation and use for strings
so string constants become words, so we can fiddle with them
|
2015-11-08 23:58:35 +02:00 |
|
Torsten Ruger
|
6f69995284
|
stab at inter to string
wip
|
2015-11-08 17:11:03 +02:00 |
|
Torsten Ruger
|
ede7639861
|
forgot to link tests in
so code climate complained, oh now
|
2015-11-08 17:09:28 +02:00 |
|
Torsten Ruger
|
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 |
|
Torsten Ruger
|
6ea698d397
|
save some to_s code
|
2015-11-08 14:30:42 +02:00 |
|
Torsten Ruger
|
cf05e7553a
|
rework interpreter test framework
remove lots of copy paste
|
2015-11-08 14:30:28 +02:00 |
|
Torsten Ruger
|
37564d9c2e
|
implement message pseudo variable (like self)
too easy
also simplified some tests
|
2015-11-08 13:55:38 +02:00 |
|
Torsten Ruger
|
502cfa357d
|
implement and test field access
|
2015-11-08 13:39:13 +02:00 |
|
Torsten Ruger
|
6cd95ee933
|
more layout tests, seeing class names on stdout
|
2015-11-08 00:55:37 +02:00 |
|
Torsten Ruger
|
ab7e517e9e
|
slightly tighter parfait tests
|
2015-11-07 22:26:06 +02:00 |
|
Torsten Ruger
|
f11e8f0a13
|
fix all the test
many are off course affected by call sequence changes
|
2015-11-07 22:20:21 +02:00 |
|
Torsten Ruger
|
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 |
|
Torsten Ruger
|
7523bac80a
|
add layout and class accessor and test
|
2015-11-07 19:38:52 +02:00 |
|
Torsten Ruger
|
37928b8591
|
rename internal get/set functions
mainly because the salaam parser chokes on internal…
|
2015-11-07 17:40:59 +02:00 |
|
Torsten Ruger
|
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 |
|
Torsten Ruger
|
d878ce00d8
|
framework for parfait runtime testing
with interpreter for now
later with arm exec support
|
2015-11-07 17:37:41 +02:00 |
|
Torsten Ruger
|
c9c0f66d79
|
rename test/parfait
to then write parfait test on the runtime
|
2015-11-07 14:04:38 +02:00 |
|
Torsten Ruger
|
b1939e9828
|
rename helper
|
2015-11-07 12:18:08 +02:00 |
|
Torsten Ruger
|
42c404802d
|
more class function testing
|
2015-11-07 00:13:57 +02:00 |
|
Torsten Ruger
|
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 |
|
Torsten Ruger
|
ebcc15d314
|
testing fibo
|
2015-11-06 14:24:57 +02:00 |
|
Torsten Ruger
|
eae5cac4b5
|
check returns on tests
|
2015-11-05 17:00:41 +02:00 |
|
Torsten Ruger
|
1309ea37de
|
fibonacci while works just as well now
surprisingly much faster though,
|
2015-11-05 13:37:08 +02:00 |
|
Torsten Ruger
|
aad50021fe
|
more messages for recursive fibs
|
2015-11-05 12:23:11 +02:00 |
|
Torsten Ruger
|
4014ad27fe
|
fix and test return
return was in the wrong message
better tests now
|
2015-11-05 12:22:48 +02:00 |
|
Torsten Ruger
|
8310bc4985
|
fix while tests now that while is fixed
|
2015-11-04 20:28:02 +02:00 |
|
Torsten Ruger
|
32275f4d48
|
fix interpreter test
|
2015-11-04 20:27:48 +02:00 |
|
Torsten Ruger
|
c87682b77f
|
fix padding
used to be that type and layout were hidden
now type is gone and layout is an explicit instance, so 0 overhead
|
2015-11-04 10:34:03 +02:00 |
|
Torsten Ruger
|
5bddbfbb62
|
rename word_length to padded length
with word_length i was never sure if it was the padded version or not
|
2015-11-04 10:33:10 +02:00 |
|
Torsten Ruger
|
0f8f0a681c
|
fix padding to only consider layout (1 word)
|
2015-11-03 16:22:50 +02:00 |
|
Torsten Ruger
|
ca1dc36e3d
|
method marking for labels
|
2015-11-03 16:22:24 +02:00 |
|
Torsten Ruger
|
6882f39645
|
fixing lengths
|
2015-11-03 16:21:50 +02:00 |
|
Torsten Ruger
|
14f8b42015
|
fix instruction order, now with the save
and finally formatted in statements too
|
2015-11-03 11:25:02 +02:00 |
|
Torsten Ruger
|
dae12c532c
|
fix fragment tests
they mostly got longer due to the added store instruction + label
|
2015-11-03 11:23:58 +02:00 |
|
Torsten Ruger
|
5a8d7d313f
|
little more tests
|
2015-11-03 11:23:15 +02:00 |
|
Torsten Ruger
|
03979156db
|
fix statements
as they go
|
2015-11-02 20:12:01 +02:00 |
|
Torsten Ruger
|
7eebc775d6
|
let helper output correct version in case of error
|
2015-11-02 20:11:40 +02:00 |
|
Torsten Ruger
|
23e09b7149
|
more dubious test hacking
|
2015-11-02 17:32:06 +02:00 |
|
Torsten Ruger
|
0094a89707
|
fix spurious test
or maybe hack is more correct
|
2015-11-02 11:34:08 +02:00 |
|
Torsten Ruger
|
7d7b7ca995
|
adding types to layout
so we can test assignment
|
2015-10-29 12:45:29 +02:00 |
|
Torsten Ruger
|
e4201143b3
|
last fixes from source change
|
2015-10-28 21:40:48 +02:00 |
|
Torsten Ruger
|
5d3aace459
|
use module compile function
|
2015-10-28 21:40:22 +02:00 |
|
Torsten Ruger
|
bdb4a40f9c
|
only string and ast allowed as source
|
2015-10-28 21:38:23 +02:00 |
|
Torsten Ruger
|
ef6cb2a069
|
use instruction steam from message
had been attached there last week, but was still used mainly through
the source (which i’m trying to remove)
|
2015-10-28 14:33:38 +02:00 |
|
Torsten Ruger
|
142c36a374
|
fix return statement to actually return
fix a million tests
|
2015-10-27 21:04:46 +02:00 |
|
Torsten Ruger
|
79cf59c4e2
|
still finding index errors
|
2015-10-27 18:45:56 +02:00 |
|
Torsten Ruger
|
444ad75e1e
|
some message tests, all ok
|
2015-10-27 18:08:40 +02:00 |
|
Torsten Ruger
|
bb908dcf76
|
adding arg length to call sequence
and fix all the tests that affects
|
2015-10-27 16:21:11 +02:00 |
|
Torsten Ruger
|
bd171d091a
|
fix tests for indexed messages and frames
index_length changes index a bit
but from now on changes to layouts should push the index automatically
just have to set the index while calling now
|
2015-10-27 16:05:50 +02:00 |
|
Torsten Ruger
|
49b25ad971
|
fixed fragment tests
|
2015-10-27 11:00:48 +02:00 |
|
Torsten Ruger
|
638c367e00
|
more class methods
|
2015-10-26 22:23:06 +02:00 |
|
Torsten Ruger
|
5b7c98f50b
|
order requires
|
2015-10-26 22:22:38 +02:00 |
|
Torsten Ruger
|
abaa56fbba
|
add create_method for layout too
as for class, same signature
some more test for behavior
|
2015-10-26 17:24:28 +02:00 |
|
Torsten Ruger
|
9d0b264b79
|
minors
|
2015-10-26 17:23:35 +02:00 |
|
Torsten Ruger
|
55dd5f74fc
|
fixed layout inspect bug
|
2015-10-26 15:07:59 +02:00 |
|
Torsten Ruger
|
885aa765d6
|
still fixing index bugs
the indexed_length got written wrong
which is why the layout methods didn’t work
Now all indexes are 1 based, even fake men, where we just ignore 0
|
2015-10-26 14:33:36 +02:00 |
|
Torsten Ruger
|
9f4952b5ac
|
create behavior module
behavior handles instance methods (add/remove/find)
and shall be included in layout later too
|
2015-10-26 13:27:56 +02:00 |
|
Torsten Ruger
|
b76c140d32
|
some class field tests
|
2015-10-26 13:08:40 +02:00 |
|
Torsten Ruger
|
4cadfc9ea9
|
shortening some methods, removing object prefix
|
2015-10-26 12:58:38 +02:00 |
|
Torsten Ruger
|
d2c670b31a
|
fixing offset bug
found by tests that overwrite the attribute
|
2015-10-26 12:57:54 +02:00 |
|
Torsten Ruger
|
96f43dcfda
|
also giving word it's length
still hacked as char per word, but should be easy enough to fix when…
|
2015-10-26 12:23:52 +02:00 |
|
Torsten Ruger
|
979ebb7612
|
fixing indexed stuff
layout returns layout as first name (offsets indexes)
object internal length is gone into layouts functionality
|
2015-10-26 12:22:32 +02:00 |
|
Torsten Ruger
|
df62b75c6f
|
adding an instance for the length of lists
|
2015-10-25 20:44:03 +02:00 |
|
Torsten Ruger
|
c1ee67038c
|
internally objects stop changing size
|
2015-10-25 20:43:13 +02:00 |
|
Torsten Ruger
|
60098257e9
|
use include so we can test with is_a
using the well documented included/extend trick
|
2015-10-25 19:16:12 +02:00 |
|
Torsten Ruger
|
b7d0ee8f99
|
wit metaclass and class functions
needs to go back to arrays first
|
2015-10-25 15:40:12 +02:00 |
|
Torsten Ruger
|
0d001ec0fc
|
rename super_clsas to super_class_name
as it should have been
|
2015-10-25 15:32:38 +02:00 |
|
Torsten Ruger
|
99870c92d8
|
linking new tests in
|
2015-10-25 14:03:47 +02:00 |
|
Torsten Ruger
|
7de2f913a0
|
more class tests
|
2015-10-25 13:19:18 +02:00 |
|
Torsten Ruger
|
12e31f28c2
|
fix and test class definition
|
2015-10-25 12:31:35 +02:00 |
|
Torsten Ruger
|
7a690cd38d
|
fix to_s
|
2015-10-25 12:10:56 +02:00 |
|
Torsten Ruger
|
405a6935d4
|
lots of stuff to move to linked lists
and remove the blocks
more position stuff coming, but the list part should be ok
|
2015-10-24 17:12:36 +03:00 |
|
Torsten Ruger
|
a871f96630
|
remove passes and achieve the same by translating
|
2015-10-24 11:42:36 +03:00 |
|
Torsten Ruger
|
57f37ec023
|
removed blocks and moved to labels
somewhat easier to understand the code as a linked list
relatively painless change, considering
|
2015-10-23 21:27:36 +03:00 |
|
Torsten Ruger
|
6754518daf
|
prune builtin
will need much less, many more things can be expressed in soml
|
2015-10-23 15:13:05 +03:00 |
|
Torsten Ruger
|
147a77f4e4
|
fix arm test by fixing arm
|
2015-10-23 14:46:27 +03:00 |
|
Torsten Ruger
|
897e11ce80
|
store three versions of the code in method
source, instructions and binary
|
2015-10-23 14:41:47 +03:00 |
|
Torsten Ruger
|
e0c5bc4c11
|
rename phisol to soml
|
2015-10-23 14:22:55 +03:00 |
|
Torsten Ruger
|
dcbd3c7091
|
fold last of the virtual into register
|
2015-10-22 18:16:29 +03:00 |
|
Torsten Ruger
|
c68577c3f4
|
fixed more cases of empty block syndrome
|
2015-10-22 15:37:02 +03:00 |
|
Torsten Ruger
|
6ac339d998
|
catching empty blocks
should really clean those away
|
2015-10-22 15:34:47 +03:00 |
|
Torsten Ruger
|
b932f67da0
|
fixing tests
because interpreter was fixed
|
2015-10-22 14:51:20 +03:00 |
|
Torsten Ruger
|
3895ac624c
|
fix offsets, debugging revealed them to be 1 off
|
2015-10-22 11:48:03 +03:00 |
|
Torsten Ruger
|
4ca15449be
|
test and fix arg passing offset too
|
2015-10-22 11:32:37 +03:00 |
|
Torsten Ruger
|
13b8d0645f
|
tests for offset fix
|
2015-10-22 11:02:57 +03:00 |
|
Torsten Ruger
|
db5c37bc55
|
fix while syntax and test
|
2015-10-19 16:37:12 +03:00 |
|
Torsten Ruger
|
99cff3aa32
|
fix the if syntax and branches
|
2015-10-19 16:22:24 +03:00 |
|
Torsten Ruger
|
1fd937927c
|
adjust branch names
IsXXX with xxx as condition, same as after if_xxx
AlwaysBranch is back to Branch
|
2015-10-19 16:08:00 +03:00 |
|
Torsten Ruger
|
50379a1fea
|
update to new syntax and patch tests
basic semantics remain, but have to improve test for new functionality
that has to be written for new branch types
|
2015-10-19 15:31:48 +03:00 |
|
Torsten Ruger
|
bdcd0f297d
|
first interpreted tests, fix branch issues
whole branch logic wobbly
better syntax needed, but working(ish) for now
|
2015-10-19 14:46:12 +03:00 |
|