Commit Graph

384 Commits

Author SHA1 Message Date
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
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
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
4940bc41a3 keep positions globally, not in the object
hopefully cleaner switch after bootstrapping
2016-12-28 12:51:18 +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
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
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
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
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
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
Torsten Ruger
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
Torsten Ruger
756cb52a98 renames compiler to method_compiler 2016-12-18 14:15:19 +02:00
Torsten Ruger
e10fc3eedd some reek assited coding on assembler 2016-12-16 15:41:26 +02:00
Torsten Ruger
190a0ffa47 adds set_byte interpreter test 2016-12-16 01:43:54 +02:00
Torsten Ruger
ed0900df7f extracting to_s from getter and setter 2016-12-16 00:30:26 +02:00
Torsten Ruger
bc22c40101 Get Byte interpreter test 2016-12-15 22:15:58 +02:00
Torsten Ruger
886220d388 remove unused variable class 2016-12-15 19:43:53 +02:00
Torsten Ruger
dc56274940 refactor also building word
obviously created by copy/paste, more refactoring possible
2016-12-15 19:31:39 +02:00
Torsten Ruger
5ea6bfed27 refactor builtin object, some machine too 2016-12-15 19:20:54 +02:00
Torsten Ruger
884bf23e5f fix elf test 2016-12-15 17:57:45 +02:00
Torsten Ruger
b3a9d8b1bc register and boot consequences of typed method 2016-12-14 13:23:46 +02:00
Torsten Ruger
021fab31db small things 2016-12-14 13:22:47 +02:00
Torsten Ruger
17023fdeb1 rename method to typed_method 2016-12-12 23:38:55 +02:00
Torsten Ruger
4ff684b6a4 even more refactoring for assembler 2016-12-11 16:48:01 +02:00
Torsten Ruger
fffe814205 more assembler refactor 2016-12-11 16:12:39 +02:00
Torsten Ruger
90a808b1c5 assebler refactor 2016-12-11 14:48:12 +02:00
Torsten Ruger
6bb23eac56 small interpreter refactor 2016-12-11 14:19:24 +02:00
Torsten Ruger
e479b00b29 introduce base class for get_slot and get_byte called getter 2016-12-11 14:12:35 +02:00
Torsten Ruger
ef285a146f add abstract base class for set_byte and set_slot called setter 2016-12-11 14:06:09 +02:00
Torsten Ruger
1dbd8c86e0 remove parslet dependency 2016-12-11 14:05:43 +02:00
Torsten Ruger
f3248462cc remove references to soml 2016-12-11 12:55:03 +02:00
Torsten Ruger
3715eb94ed uncomment unused code for now 2016-12-11 12:18:11 +02:00
Torsten Ruger
224670e449 refactor name expression for compiler 2016-12-09 12:13:33 +02:00
Torsten Ruger
ca4bdcc528 gets rid of soml-parser completely 2016-12-08 20:13:08 +02:00
Torsten Ruger
e2236cf703 move soml ast here, now called type as the language is going 2016-12-08 19:38:50 +02:00
Torsten Ruger
da553f996f move compiler to typed
starting to get rid of soml, bit by bit
2016-12-08 15:25:20 +02:00
Torsten Ruger
a31f75fe93 basic immutability for type
add_instance_variable now uses global type list to check
adds hash and to_has functions
use backdoor (send) for booting
2016-12-08 12:50:25 +02:00