Commit Graph

1988 Commits

Author SHA1 Message Date
dba08ba8ce small code climate inspired clean 2018-03-20 13:48:17 +05:30
2c6ea7ea46 finish truth check (green again)
some (basic) if tests
2018-03-20 13:30:38 +05:30
8bac096f74 fix while statements each
wasn’t picking up condition
2018-03-20 13:29:18 +05:30
c8980595a3 start to test if
truth check is only half done
2018-03-19 21:20:11 +05:30
63c1468e1e bit of code docs 2018-03-19 21:19:46 +05:30
cff6226297 own file for check 2018-03-19 21:19:26 +05:30
99ced4369a adding Tue False and Nil Class to Parfait
and boot
2018-03-19 21:18:56 +05:30
d195ef68da move the code to load a slot_definition to a register
so we don’t have to copy it.
2018-03-19 20:54:32 +05:30
7953ef3e39 fix slot_load for higher order left arguments
needed for getting args or frame of the target, for assigns
fixed ripples in tests
2018-03-19 15:47:40 +05:30
c0a7f1d284 fix insertion and add assign send
must implement send conversion before this makes sense
2018-03-19 13:19:42 +05:30
66a160d8ab fix code insertion in method 2018-03-19 13:05:08 +05:30
46ed4285a2 filing at dependencies 2018-03-18 22:36:36 +05:30
af94d40cab passing frame (locals) into method creation
so typed_method have correct frame information and
can resolve slots correctly (next step)
2018-03-18 22:09:27 +05:30
0813312ddc using compiler_for to create all building compilers
unify api, create defaults and especially pass the right types into the
typed method creation
2018-03-18 22:08:35 +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
be79388cc5 remove dead code 2018-03-18 10:50:37 +05:30
c5ec532616 use common list for risc instruction
strange that that was not done before as the code was clearly copied
when extracting it

Fix bug for insertion
2018-03-18 10:36:01 +05:30
9c052c78a7 fix most of slot_load to_risc
higher orders not working yet
2018-03-17 21:32:09 +05:30
cddc25a595 fixing tests for shifting constants into slots 2018-03-17 21:15:38 +05:30
3fecdf54a5 always return slot definitions
fixing sends defs
2018-03-17 20:57:35 +05:30
642f16b73a adding cache entry to parfait 2018-03-17 19:03:39 +05:30
16c8fcbf66 first local assignment risc test
comes with casualties
slot_load needs more work
2018-03-17 11:13:44 +05:30
ba3ec9b1a2 everything but dynamic dispatch 2018-03-16 19:39:35 +05:30
d01bdf5dc5 return works 2018-03-16 19:26:27 +05:30
259b248588 ifs working 2018-03-16 19:05:22 +05:30
da0e1cdc5f simple sends and all whiles working 2018-03-16 18:41:17 +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
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
0a9997f549 final rename remnant, green again 2018-03-14 20:29:51 +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
2533842204 add traceable dummies 2018-03-14 20:25:21 +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
79b4b07ac4 style 2018-03-14 17:39:49 +05:30
6fe13fc2b7 fix insertion to account for chains 2018-03-14 17:39:31 +05:30
2aa7d37a83 rename locals to frame
includes temps and tradition
2018-03-14 17:39:04 +05:30
83d957377e more precise 2018-03-14 17:37:27 +05:30
b854c075b2 move each slot instruction into own file 2018-03-14 17:36:55 +05:30
a3890afc20 clean up requires a bit 2018-03-13 16:57:24 +05:30
698de13d65 removes remnant 2018-03-13 16:52:31 +05:30
20a88f9ac8 sorting mom instructions and statements into separate dirs 2018-03-13 16:51:33 +05:30