Commit Graph

45 Commits

Author SHA1 Message Date
18994d2b4b start on yield statement 2018-06-28 20:15:24 +03:00
c6a903073a start on blocks 2018-06-26 20:28:27 +03:00
ab4bc370ed another +1 bug 2018-05-15 16:25:55 +03:00
1685ba5a44 fix send normalisation 2018-04-27 21:55:41 +03:00
672ccb351d fix argument hoisting
arguments in vool must be simple variables
finally did the hoisting to do that
2018-04-27 09:59:01 +03:00
fabe4db4f6 fix logic error in vool dynamic send
using receiver of current method
instead of receiver of next message
2018-04-08 22:59:42 +03:00
33ffcf1d88 move resolve_method code from word to mom
rather make resolve an instruction.
Since it was coded in risc anyway, we not only save the setup and call
But also makes the mom instruction flow clearer
The method really came from not wanting to code it in risc, but with
the Builder, that is now surprisingly painless
2018-04-08 18:55:17 +03:00
f4ce6d6253 starting to redo message_setup
apart from previous commits bug, it also needs to deal with
dynamic/static correctly
and while at it will do the getting from space
2018-04-05 12:24:49 +03:00
17b52d4e80 fix dynamic resolution
was loading self, when it needs to load receiver
some more test (up to the resolve) start working
2018-04-03 12:55:28 +03:00
ee8b9469af fix argument indexing
good old index bug, off by one
this time forgot about parfait 1-indexing
2018-03-30 20:01:31 +03:00
bc4d4b428a change boot to new hash syntax 2018-03-25 13:27:15 +03:00
e0dd4e0ad7 test dynamic call
made cache labels unique
2018-03-21 21:58:43 +05:30
fa797f722d to_risc for NotSameCheck
which is only used in call cache checking
some fixing, needed to add a abel for the cache check jump
2018-03-21 12:38:28 +05:30
48485477c2 implement one more depth for slot_load
soon time to make some loop
fix offset with array / object layout difference
2018-03-20 23:31:20 +05:30
8dc0950980 implement ArgumentTransfer
also unite with the receiver which was handled incorrectly
(left as a Vool constant)
2018-03-20 22:31:39 +05:30
46ed4285a2 filing at dependencies 2018-03-18 22:36:36 +05:30
e7b878a353 mostly finish index resolve in slot_definition
alas, it reveals error, types may not be set correctly
2018-03-18 10:51:46 +05:30
3fecdf54a5 always return slot definitions
fixing sends defs
2018-03-17 20:57:35 +05:30
35a0952943 first while test working
fixed logic error in test framework
2018-03-16 12:33:11 +05:30
ea882f403a pass parfait method to to_mom
previously it was the toll incarnation, and that is almost the same
But for the type of self. This s by definition only known in the
parfait method
And we need it off course for type checking/dispatch
2018-03-16 11:03:29 +05:30
3909bdcc7d method tests working again 2018-03-16 10:32:11 +05:30
1def69c783 simple send test works again 2018-03-15 21:54:03 +05:30
ad4690d719 move common statements into its only use in vool 2018-03-15 20:40:21 +05:30
3247c2036c moving from collect to each
when iterating over tree.
Much cleaner, less hokuspukus methods that are noops

Mom is coming back out, but not linked yet
2018-03-15 17:22:56 +05:30
78ef1368de introducing expressions and constants
not everything statement anymore (as in ruby)
basic statement tests working, rest havoc
2018-03-15 11:24:14 +05:30
163cad456f random tries 2018-03-15 10:46:17 +05:30
03a4e04f7e rename self to receiver
just because it is a keyword and can’t be used
2018-03-14 20:26:13 +05:30
b297650b78 adds a mom version of basic values 2018-03-13 12:30:51 +05:30
c806106917 simple test for dynamic call 2018-03-12 18:13:26 +05:30
3a365c779a setup to resolve method dynamically 2018-03-10 18:47:36 +05:30
b7701d0d5e start on dynamic call 2017-12-05 21:46:37 +02:00
c3318f8f61 send refactor, green by stubbing 2017-09-14 18:42:01 +03:00
2739747453 a start on dynamic dispatch (wip) 2017-09-14 16:07:02 +03:00
be1481ce34 some renaming, start on cached
cached stalled for now, continue down to rise with what is first
2017-09-12 17:49:42 +03:00
afbcbca4da extracting some of the calling into own instructions 2017-09-11 14:22:33 +03:00
0ccb7df0ab refactor send code 2017-09-10 22:54:56 +03:00
c245acbdd3 fix slot_moves for sending, receiver and args 2017-09-10 13:14:51 +03:00
80c3430536 replace arrays with Statements class 2017-09-06 12:51:24 +03:00
bbc13946ed implements self sent
with explicit and implicit self
2017-04-25 09:40:09 +03:00
dda2ddd9fb rename test to avoid clashes 2017-04-23 17:50:06 +03:00
3e282c083d introduces compile time type (ct_type)
to determine whether we can call directly
2017-04-19 20:59:13 +03:00
d2fba19b95 fixes simple argument passing 2017-04-16 11:39:21 +03:00
0d43987005 start to compile send
still very hacked version of simple call, but a start
2017-04-15 20:58:39 +03:00
8942f42310 adds collect for the statements 2017-04-08 12:10:42 +03:00
db8f99409b move vool statements into own directory
also tests for guard to work
2017-04-06 19:11:11 +03:00