ad4690d719
move common statements into its only use in vool
2018-03-15 20:40:21 +05:30
79bf416e58
collapsed slot classes into one
...
different slot operation have different right sides
mom assignment tests work again
157 others don’t
2018-03-15 20:33:38 +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
3702411043
first propper hoisting test
...
had to change course, normalising and object creation is not possible
in one go
have to now generate random tmp vars that will have to be picked up
later (sorted by tmp_ prefix?)
2018-03-15 12:46:56 +05:30
9ddcb3224c
rename
2018-03-15 11:32:32 +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
559a797100
rename locals to frame
2018-03-14 20:24:47 +05:30
7db329fa6b
actually adding risc instructions
...
fix test harness
1 working test (yeh)
2018-03-14 17:41:09 +05:30
2779045caa
small rename
2018-03-13 16:44:39 +05:30
96800fd8fd
starting to_risc descent
...
just fleshing it for now
2018-03-13 16:16:06 +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
e0f6ba7bcf
simple if test without else
...
unveils many a bug that is now fixed
2018-03-12 17:56:44 +05:30
5fe0ba06ab
stash old vm
...
moving on to getting mom to work and can’t have both
interpreter and elf broke, about 100 tests went
2018-03-11 17:02:42 +05:30
f7aac1d1a4
polish docs
...
and a bit of code style
2018-03-11 16:11:15 +05:30
d6a2ea4cfc
fix dynamic resolve
...
patch more like, real resolve method will have to be written
and put in there
2018-03-10 19:01:38 +05:30
3a365c779a
setup to resolve method dynamically
2018-03-10 18:47:36 +05:30
bc5906fb83
moving vool_method to parfait
2017-12-10 20:47:26 +02:00
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
3c92e707da
refactor
2017-09-11 14:23:06 +03:00
afbcbca4da
extracting some of the calling into own instructions
2017-09-11 14:22:33 +03:00
b6939fe4b3
small rename
2017-09-11 14:21:57 +03:00
0ccb7df0ab
refactor send code
2017-09-10 22:54:56 +03:00
1a9370ad14
fix moms ivar assignment
2017-09-10 13:33:32 +03:00
c245acbdd3
fix slot_moves for sending, receiver and args
2017-09-10 13:14:51 +03:00
43d660d2d2
fix slot moves for assignment
2017-09-10 13:04:36 +03:00
66901eeb5b
fix use of slot_constant vs slot_move
...
wip
2017-09-10 12:57:25 +03:00
80c3430536
replace arrays with Statements class
2017-09-06 12:51:24 +03:00
9a1e4a6f27
own statements class for mom
...
so we don’t have to deal with arrays (as a special case)
and use method sending as is good oo
2017-09-06 12:33:46 +03:00
af85cb7c67
adds mom while
...
much like the if, difference will show later in the jump arrangement
2017-09-05 12:04:52 +03:00
76a87dd418
extract hoisting to module
...
to be used in while statement
2017-09-05 12:04:12 +03:00
1a219a7c89
introduce slot_definition and use it
2017-09-04 21:31:49 +03:00
dab4e74659
Reworking if statement
...
Using 2 phase approach
Flattening tbd
2017-09-04 21:00:08 +03:00
0b161ffa06
move ruby_method out of rubyx
...
ruby getting ready for destruction as it’s not used anymore
2017-08-31 16:11:06 +03:00
cd2988f8a2
fix condition if
2017-08-30 22:54:03 +03:00
c3939ef622
start better if mom test
2017-08-30 22:27:12 +03:00
349dd37c82
small refactor
2017-08-30 18:23:54 +03:00
b6fa8261e6
first stab at moms if
2017-08-30 17:21:13 +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
265b25d5f4
introduce return_sequence instruction to mom
2017-04-14 21:01:50 +03:00
c885888f4a
start implementing return for constant
2017-04-14 10:52:23 +03:00