Commit Graph

1037 Commits

Author SHA1 Message Date
Torsten Ruger 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
Torsten Ruger 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
Torsten Ruger fd7e4afb2f small meta related changes 2015-11-07 00:14:10 +02:00
Torsten Ruger 46e1a112ab metaclass moves down to object 2015-11-07 00:12:17 +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 4eb3d9029a use logger 2015-11-05 16:50:00 +02:00
Torsten Ruger 13d0747b45 test the log_level too 2015-11-05 14:05:12 +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 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
Torsten Ruger 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
Torsten Ruger ab2c73f42c right name for return label makes interpreter work 2015-11-04 20:22:28 +02:00
Torsten Ruger 691ae96d71 fix names of branch codes
also store objects in register, avoid the whole object_id thing which
just lead to unclarity about class
2015-11-04 20:22:03 +02:00
Torsten Ruger 428faad25f opal fix for indexes 2015-11-04 16:11:25 +02:00
Torsten Ruger b5e733cd11 finally simple logging
instead of commenting puts
2015-11-04 11:48:51 +02:00
Torsten Ruger 2236065d02 position filling after the padding changes, works again 2015-11-04 10:34:58 +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 6ada815735 first stab at fixing the assembly
lots of length fiddling
wip
2015-11-03 16:24:12 +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 c15445a958 let labels be constants 2015-11-03 16:20:25 +02:00
Torsten Ruger 5a8d7d313f little more tests 2015-11-03 11:23:15 +02:00
Torsten Ruger c940e25f91 other half of previous call change 2015-11-03 11:22:52 +02:00
Torsten Ruger 1be5d1862f need to collect labels for return
so the interpreter can find the object
2015-11-03 11:22:26 +02:00
Torsten Ruger bc414fd3e8 function call now saves the return address before calling
that means SaveReturn is obsolete (breaks loads of tests)
first step towards multi - return which obviously can not have the
callee save return address.
In fact this would make FunctionCall redundant too, as it is really
just a branch
2015-11-03 11:20:49 +02:00
Torsten Ruger cffbc91821 fix field_def to new syntax 2015-11-02 21:27:37 +02:00
Torsten Ruger 45bd4bfdc6 remove save return 2015-11-02 20:11:12 +02:00
Torsten Ruger ddb1df7362 start to fix the link issue
that came from removing SaveReturn
2015-11-02 20:10:48 +02:00
Torsten Ruger 86b0030f15 refactor on_call 2015-11-02 17:32:21 +02:00
Torsten Ruger 834266e11e improve label names a bit 2015-11-01 19:13:40 +02:00
Torsten Ruger d3a7809746 use . to mark methods 2015-10-30 00:01:28 +02:00
Torsten Ruger 7e24f63327 polish sources 2015-10-29 22:31:28 +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 e6743c7216 (string) source knockoffs 2015-10-28 21:39:59 +02:00
Torsten Ruger c426f4a6d5 some of the sources methods belonged to method really 2015-10-28 21:38:52 +02:00
Torsten Ruger bdb4a40f9c only string and ast allowed as source 2015-10-28 21:38:23 +02:00
Torsten Ruger 191be8d2f6 use compiler to generate methods and their instructions 2015-10-28 21:37:42 +02:00
Torsten Ruger 99a695907c move method_source functionality into compiler
the source was there long before the compiler (sis language) came along
and was basically doing the same
Much clearer concept with using compiler to generate methods and code
Also move compile method to method
2015-10-28 21:36:41 +02:00
Torsten Ruger c245272e52 don't export current 2015-10-28 14:37:40 +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 72b790c107 remove method source receiver
no harm done it seems
2015-10-28 14:24:14 +02:00
Torsten Ruger e75517ff05 move constants to machine 2015-10-28 13:00:23 +02:00
Torsten Ruger 7e0778dc70 remove return_type
soon to be obsolete with multi returns
2015-10-28 12:19:10 +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