Commit Graph

73 Commits

Author SHA1 Message Date
f1cfd3c379 change calling convention
Message carries arrays for arguments and locals
This means an extra load for any access
Also fix silly bug: using the wrong method (the one we’re in, not the
one we’re calling)
2016-12-27 20:37:53 +02:00
aaa94f0743 small fixes 2016-12-27 20:34:11 +02:00
f648bf7bd5 rename also get_slot, to slot_to_reg
makes source and target clear
2016-12-25 18:05:39 +02:00
35adf9a5e6 rename set_slot
set_slot was clear about the target, but not the source.
Better with reg_to_slot (and soon it’s inverse slot_to_reg)
2016-12-25 18:02:39 +02:00
1b8d6149dd adding to_s to code for debugging 2016-12-23 21:31:31 +02:00
6c9bd7e476 remove unused code
also just came through opal
2016-12-22 21:16:56 +02:00
3b888b203d crude rework of the hashing to work in opal 2016-12-22 21:16:36 +02:00
2adec3226c opal gods require explicit requires 2016-12-22 21:15:20 +02:00
c3c52d36b8 seperate args from message (just like frame) 2016-12-21 22:35:36 +02:00
ed12108425 rename locals from type to role in message 2016-12-21 19:01:42 +02:00
0e99ff33ae use frame type rather than the indexed construct 2016-12-21 18:59:07 +02:00
93ba5543b3 more renaming of frame 2016-12-21 18:51:22 +02:00
0040baae28 rename frame to named_list to be shared soon 2016-12-21 18:45:18 +02:00
aa5f48e3c6 remove instance_names from class again
and use types names instead. For now assuming Object class
2016-12-19 14:20:47 +02:00
af9fed863f small rename 2016-12-19 14:16:10 +02:00
e77298f4b1 Give the class a list of ivars
Which is redundant with the type’s names, so let’s see
2016-12-18 20:04:40 +02:00
170d453a36 start with melon and tests
First step, create a basic class
2016-12-18 17:02:55 +02:00
756cb52a98 renames compiler to method_compiler 2016-12-18 14:15:19 +02:00
272f99daf7 the cop struck again 2016-12-17 20:09:17 +02:00
48af14f5c9 removes class statements
classes have to be created in melon, a level up
2016-12-17 18:31:26 +02:00
ffb69a2c55 remove function statements
functions need to be defined a level up
2016-12-17 18:28:42 +02:00
8845b91529 remove FieldDef
and on_field_def , :field_def and fixed all related tests
local variables will have to be determined outside the typed layer
2016-12-17 13:12:49 +02:00
c12f11fba5 try both ree and cop 2016-12-17 09:44:21 +02:00
5c34835ae3 type converts method args if needed 2016-12-17 00:17:54 +02:00
681b53cc4c make compiler default to compiling Space.main 2016-12-17 00:17:35 +02:00
f8cefcde3c retiring ClassField and class_field from typed layer
Creating classes is the responsibility of melon
2016-12-16 19:05:49 +02:00
6f9955a726 more auto guard rules
and related renaming of files
2016-12-16 01:14:09 +02:00
516bbd10b7 little fat of meta class
meta is firmly in the ruby world, not implemented in type world
2016-12-16 00:57:10 +02:00
f7e01ff05e remove the value class
more of an idea, had no impact on implementation
2016-12-16 00:56:25 +02:00
886220d388 remove unused variable class 2016-12-15 19:43:53 +02:00
5ea6bfed27 refactor builtin object, some machine too 2016-12-15 19:20:54 +02:00
884bf23e5f fix elf test 2016-12-15 17:57:45 +02:00
1571c796bb remove unused from type 2016-12-15 14:00:34 +02:00
2b3f9c398e add find method to indexed 2016-12-15 14:00:03 +02:00
9a0e2bcb11 typed methods now for type only 2016-12-14 13:24:42 +02:00
021fab31db small things 2016-12-14 13:22:47 +02:00
bd875be023 move typed method's home to type
class should in the future have ruby_methods
2016-12-14 13:21:55 +02:00
012b5d683c change method locals to type object too (same as args) 2016-12-13 19:18:17 +02:00
16b3a77350 fixes from the method argument change
Affects
method creation
argument manipulation
compiler / to_code
2016-12-13 18:49:45 +02:00
c346260bde change method arguments to be a type instance
where is was a list of variables (half baked)
variables also having values (not applicable)
2016-12-13 18:47:44 +02:00
1c28926c6b improve type tests 2016-12-13 18:46:03 +02:00
357490ff5f add little bit docs 2016-12-13 11:02:53 +02:00
17023fdeb1 rename method to typed_method 2016-12-12 23:38:55 +02:00
f3248462cc remove references to soml 2016-12-11 12:55:03 +02:00
b6fdb51ed1 fix statement list compilation 2016-12-11 12:13:42 +02:00
e82c86f6c1 fix class def tests and code 2016-12-10 22:41:49 +02:00
6d4347c7ba finish assignment tests
and related code fixes
2016-12-10 18:48:18 +02:00
f49b0c7356 fix assignment
tests paying off
2016-12-10 18:08:21 +02:00
87693112d4 small fix 2016-12-10 18:07:38 +02:00
4054b61752 fix more expression tests 2016-12-10 15:18:37 +02:00