Commit Graph

1566 Commits

Author SHA1 Message Date
Torsten Ruger f4b3c645e5 rework type with separate arrays for names and types
Means no more indexed
also using ruby instances
small rename for names
2016-12-29 18:42:38 +02:00
Torsten Ruger 4c3007e6c0 removing meta class (for now) 2016-12-29 18:39:59 +02:00
Torsten Ruger 80237e5033 rename position accessor
for future
2016-12-28 21:40:06 +02:00
Torsten Ruger c60949fe24 small refactor on arg loading 2016-12-28 21:10:14 +02:00
Torsten Ruger fa9807102b upgrade parser to avoid conflicts with opal 2016-12-28 20:38:12 +02:00
Torsten Ruger e551732f18 tighter integration with factory methods for adding code
define methods to collapse the code Register.
in add_code Register.factory_method
most instructions done, except op and branch that are rare
2016-12-28 20:37:54 +02:00
Torsten Ruger 8cfcb84c8d collect missing tests (and ordering) 2016-12-28 19:31:17 +02:00
Torsten Ruger af31774074 implement assignment type check 2016-12-28 19:20:16 +02:00
Torsten Ruger 9cf56b3aa6 use factory functions consistently to create instructions 2016-12-28 19:01:58 +02:00
Torsten Ruger 4cf732d395 use transfer factory 2016-12-28 18:37:15 +02:00
Torsten Ruger 57c038f13b use load_constant factory method 2016-12-28 18:31:29 +02:00
Torsten Ruger 7d29a85187 remove legacy :int type 2016-12-28 18:25:14 +02:00
Torsten Ruger a3585870b9 remove unused code 2016-12-28 18:17:52 +02:00
Torsten Ruger 4412eda105 small refactor and rename 2016-12-28 18:16:39 +02:00
Torsten Ruger 184f129107 dead comment removal 2016-12-28 18:10:33 +02:00
Torsten Ruger 25ae6e3d26 remove next_list from NamedList
Was legacy from the days of (linked) Frames
Now only messages are linked
2016-12-28 18:08:07 +02:00
Torsten Ruger 8867b13240 yep, opal != OPAL
engine has to be in small letters it seems
OPAL came from the original commit in 2013, but alas
2016-12-28 14:35:07 +02:00
Torsten Ruger 9226de4502 testing to_s 2016-12-28 14:11:05 +02:00
Torsten Ruger 266764be06 testing to_s on Code 2016-12-28 13:59:02 +02:00
Torsten Ruger a8f3d5a634 had to fix the string hash for opal 2016-12-28 13:53:57 +02:00
Torsten Ruger 4940bc41a3 keep positions globally, not in the object
hopefully cleaner switch after bootstrapping
2016-12-28 12:51:18 +02:00
Torsten Ruger 9fb89e09f3 fixes for tighter argument handling 2016-12-27 20:41:01 +02:00
Torsten Ruger 7462d0c486 lots more ripples from changing calling convention 2016-12-27 20:40:37 +02:00
Torsten Ruger 903fc3e4cf much ripples from changing the calling convention
See previous commit
Now args and locals are arrays in the Message
2016-12-27 20:39:39 +02:00
Torsten Ruger 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
Torsten Ruger 3c3dedadd1 remove indexed_length from NamedList 2016-12-27 20:34:47 +02:00
Torsten Ruger aaa94f0743 small fixes 2016-12-27 20:34:11 +02:00
Torsten Ruger b9b05378f5 split the if test into a plain and one with call 2016-12-27 20:32:38 +02:00
Torsten Ruger a5946cb644 same renames for bytes (set/get_byte) 2016-12-25 18:11:58 +02:00
Torsten Ruger f648bf7bd5 rename also get_slot, to slot_to_reg
makes source and target clear
2016-12-25 18:05:39 +02:00
Torsten Ruger 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
Torsten Ruger 1b8d6149dd adding to_s to code for debugging 2016-12-23 21:31:31 +02:00
Torsten Ruger 6c9bd7e476 remove unused code
also just came through opal
2016-12-22 21:16:56 +02:00
Torsten Ruger 3b888b203d crude rework of the hashing to work in opal 2016-12-22 21:16:36 +02:00
Torsten Ruger 2adec3226c opal gods require explicit requires 2016-12-22 21:15:20 +02:00
Torsten Ruger c3c52d36b8 seperate args from message (just like frame) 2016-12-21 22:35:36 +02:00
Torsten Ruger ed12108425 rename locals from type to role in message 2016-12-21 19:01:42 +02:00
Torsten Ruger 0e99ff33ae use frame type rather than the indexed construct 2016-12-21 18:59:07 +02:00
Torsten Ruger 93ba5543b3 more renaming of frame 2016-12-21 18:51:22 +02:00
Torsten Ruger 0040baae28 rename frame to named_list to be shared soon 2016-12-21 18:45:18 +02:00
Torsten Ruger b242f9e223 bringing the locals into the ruby method 2016-12-21 11:30:35 +02:00
Torsten Ruger 9ec9ccb9b6 start on collector for local variables 2016-12-21 11:20:36 +02:00
Torsten Ruger 8b05951883 extracting processor comonality before adding a third 2016-12-21 10:51:33 +02:00
Torsten Ruger cfa0c23373 Merge branch 'master' of github.com:salama/salama 2016-12-20 20:13:37 +02:00
Torsten Ruger 8507bef08b extracting methods for the compiler to handle 2016-12-20 20:02:52 +02:00
Torsten Ruger a70d20d63e add a ruby method
including source ast and args, later locals
2016-12-20 20:02:20 +02:00
Torsten Ruger 9e89306733 rename to get guard matches 2016-12-20 20:01:28 +02:00
Torsten Ruger aa6685a0cb test collector for ivar assignment 2016-12-20 15:46:23 +02:00
Torsten Rüger 50741581dd Merge pull request #2 from efueger/patch-1
Update .codeclimate.yml
2016-12-19 20:38:32 +02:00
efueger c6bbf1804b Update .codeclimate.yml
Indent last 2 `ratings: paths:` patterns to fix syntax problem
2016-12-19 13:19:05 -05:00