Torsten Ruger
|
d401327319
|
made a simple node for small objects. bad news is that tests pass unchanged
|
2014-08-19 23:16:40 +03:00 |
|
Torsten Ruger
|
8ff55fdb1f
|
that make four (times of identical == definitions)
|
2014-08-19 23:03:39 +03:00 |
|
Torsten Ruger
|
52ca7110c3
|
ad a preliminary syntax for class objects, which is just the class name
|
2014-08-19 23:01:19 +03:00 |
|
Torsten Ruger
|
a7dc60e638
|
just formatting
|
2014-08-19 22:57:08 +03:00 |
|
Torsten Ruger
|
dd59a2f9c6
|
remove unused attributes() boilerplate
|
2014-08-19 22:54:28 +03:00 |
|
Torsten Ruger
|
4b17a1e58f
|
use the sof attributes for equality
|
2014-08-19 22:40:28 +03:00 |
|
Torsten Ruger
|
28b4344ef9
|
make attributes available outside sof (iw as module funtion)
|
2014-08-19 22:39:58 +03:00 |
|
Torsten Ruger
|
9d5f62eded
|
only marking/counting occurences that are actually referenced, so numbers stay smaller
|
2014-08-18 17:25:49 +03:00 |
|
Torsten Ruger
|
e13801c764
|
moving (back) to 1.9 style hash, clearer that it is an association. didnt like the double colon
|
2014-08-18 17:19:34 +03:00 |
|
Torsten Ruger
|
81f8f0f3a2
|
actually using volotile attributes and outputting sof in test. very readable
|
2014-08-18 17:16:18 +03:00 |
|
Torsten Ruger
|
a594b716bc
|
inlining references into objects as simple data
|
2014-08-18 14:54:03 +03:00 |
|
Torsten Ruger
|
a874bd49d2
|
short version for array
|
2014-08-18 14:28:28 +03:00 |
|
Torsten Ruger
|
1dee9a4bd1
|
adding the actual references for referenced objects
|
2014-08-18 13:53:05 +03:00 |
|
Torsten Ruger
|
338c669a00
|
fix level bug that became obvous with recursion
|
2014-08-18 13:33:40 +03:00 |
|
Torsten Ruger
|
ad4aaaff8a
|
fix recursive arrays
|
2014-08-18 13:22:03 +03:00 |
|
Torsten Ruger
|
99e0c0db18
|
cleanup
|
2014-08-18 13:01:52 +03:00 |
|
Torsten Ruger
|
9f292ba618
|
fix weird object bug
|
2014-08-18 12:49:38 +03:00 |
|
Torsten Ruger
|
a3c9ab7e29
|
simpler but more verbose node model fixes everything but one
|
2014-08-18 08:19:48 +03:00 |
|
Torsten Ruger
|
b0472753f4
|
fixing arrays/hashs and starting complex objects
|
2014-08-17 21:44:34 +03:00 |
|
Torsten Ruger
|
9669831f78
|
fix all existing (hash) tests
|
2014-08-16 15:16:07 +03:00 |
|
Torsten Ruger
|
90e4837b2e
|
broaden the node hierachy
|
2014-08-16 12:34:25 +03:00 |
|
Torsten Ruger
|
2f84c0dfa6
|
fixing array tests, seperated nodes into different types
|
2014-08-16 11:43:41 +03:00 |
|
Torsten Ruger
|
7f7a174554
|
fixes object
|
2014-08-16 09:56:11 +03:00 |
|
Torsten Ruger
|
a10321922e
|
add transformation step to tree before output to help with the logic
|
2014-08-15 22:29:48 +03:00 |
|
Torsten Ruger
|
b0a54cb8c2
|
working up
|
2014-08-15 18:27:32 +03:00 |
|
Torsten Ruger
|
0a7814a07b
|
add hash with object
|
2014-08-15 17:18:15 +03:00 |
|
Torsten Ruger
|
16261f96b0
|
adds simple hash and test
|
2014-08-15 17:14:49 +03:00 |
|
Torsten Ruger
|
716bc93e4a
|
test for array with array
|
2014-08-15 15:04:13 +03:00 |
|
Torsten Ruger
|
198e70b6bd
|
fix array with object
|
2014-08-15 14:59:38 +03:00 |
|
Torsten Ruger
|
85dad14cc8
|
fix simple array
|
2014-08-14 20:24:26 +03:00 |
|
Torsten Ruger
|
2f5ed43073
|
move from known attributes to volotile (white to blacklist)
|
2014-08-14 20:04:15 +03:00 |
|
Torsten Ruger
|
6b19b915a1
|
rewrote write to use known attributes or instance variables, simple values inline
|
2014-08-14 19:49:20 +03:00 |
|
Torsten Ruger
|
7eeb269d50
|
fixed scope
|
2014-08-14 19:48:26 +03:00 |
|
Torsten Ruger
|
519283a034
|
moved utility functions to own module (used from members and writer)
|
2014-08-14 19:48:06 +03:00 |
|
Torsten Ruger
|
0a33f940cf
|
moving away from the attributes aproach, tests fixed
|
2014-08-14 19:24:18 +03:00 |
|
Torsten Ruger
|
2c2ae14928
|
getting some sof output and adding some tests. issues though. abound
|
2014-08-14 17:40:56 +03:00 |
|
Torsten Ruger
|
7e60827dd3
|
redoing the ifs with new (old) block structure
|
2014-08-13 20:05:32 +03:00 |
|
Torsten Ruger
|
90cbeddc0a
|
premature start on the salama object files, just for reading the compiled code
|
2014-08-13 20:05:00 +03:00 |
|
Torsten Ruger
|
200228a33d
|
adding the blocks to virtual machine and store instructions in array not list
|
2014-08-13 11:59:51 +03:00 |
|
Torsten Ruger
|
c2ae184e6e
|
simple test for get type
|
2014-08-07 15:41:13 +03:00 |
|
Torsten Ruger
|
a9ab3ca13e
|
forgot to add compiled methods to the class, fixed
|
2014-08-07 15:37:32 +03:00 |
|
Torsten Ruger
|
b9e259e11a
|
first ginger parfait test
|
2014-08-06 18:49:20 +03:00 |
|
Torsten Ruger
|
9a197ff7c1
|
expanded the send a bit
|
2014-08-06 18:37:19 +03:00 |
|
Torsten Ruger
|
ce3505710a
|
basic send
|
2014-08-05 15:55:24 +03:00 |
|
Torsten Ruger
|
e92f949a71
|
fix the vm in link
|
2014-07-31 21:55:54 +03:00 |
|
Torsten Ruger
|
8effcc866a
|
more machinery to the machine
|
2014-07-30 21:43:12 +03:00 |
|
Torsten Ruger
|
5add9c42f2
|
juggle into the machine
|
2014-07-30 21:07:48 +03:00 |
|
Torsten Ruger
|
7b6f364ba8
|
namechange
|
2014-07-29 18:33:11 +03:00 |
|
Torsten Ruger
|
da9a57b3cf
|
delete some files i had kept for reference
|
2014-07-28 12:59:43 +03:00 |
|
Torsten Ruger
|
8718ebf476
|
last inherited test
|
2014-07-27 10:09:31 +03:00 |
|
Torsten Ruger
|
1a95835442
|
adds message get and set instructions
|
2014-07-25 20:28:38 +03:00 |
|
Torsten Ruger
|
7df1490da8
|
mostly comments
|
2014-07-25 11:48:06 +03:00 |
|
Torsten Ruger
|
8d7b353f33
|
pass message to compile, not frame
|
2014-07-25 10:49:34 +03:00 |
|
Torsten Ruger
|
13a05e7b72
|
comments and cosmetics
|
2014-07-24 21:56:31 +03:00 |
|
Torsten Ruger
|
e427bcef43
|
change method and frame around in calling, easier to understand static first
|
2014-07-24 14:56:27 +03:00 |
|
Torsten Ruger
|
e408b0e4b9
|
fixed while instruciton linking after change in method add
|
2014-07-22 23:27:13 +03:00 |
|
Torsten Ruger
|
eb44011177
|
fixed that branch numbering bug
|
2014-07-19 21:15:27 +03:00 |
|
Torsten Ruger
|
c03c4f9cc9
|
add return instruction and fix the tests
|
2014-07-18 11:56:46 +03:00 |
|
Torsten Ruger
|
2e79caa791
|
using yaml as the storage format of the result as it handles graphs out of the box
|
2014-07-18 00:30:36 +03:00 |
|
Torsten Ruger
|
98db88ac2f
|
not recursing into labels to avoid infinite loops
|
2014-07-18 00:29:45 +03:00 |
|
Torsten Ruger
|
e02c6ed082
|
codes the while, but the testing throws stack too deep because loop detection is missing
|
2014-07-17 16:46:17 +03:00 |
|
Torsten Ruger
|
f00fa98818
|
fixed import
|
2014-07-17 03:01:34 +03:00 |
|
Torsten Ruger
|
337b1a8ee0
|
renamed to kide(crystal)
|
2014-07-17 02:26:13 +03:00 |
|
Torsten Ruger
|
fb105cb895
|
had to let go of crystal (sniff) as the name was taken
|
2014-07-17 01:00:15 +03:00 |
|
Torsten Ruger
|
f8e3f17660
|
split frame into message (caller) and frame (receiver)
|
2014-07-17 00:53:19 +03:00 |
|
Torsten Ruger
|
58298ab62b
|
some cleaning of scratches
|
2014-07-16 22:36:24 +03:00 |
|
Torsten Ruger
|
efeb910843
|
move branch counter to branch instruction (from if) in preperation of while
|
2014-07-16 22:28:28 +03:00 |
|
Torsten Ruger
|
7534626d87
|
fix the if test by naming branch and label and stitching them in constructor
|
2014-07-16 21:16:08 +03:00 |
|
Torsten Ruger
|
ba15f352db
|
gets the if coded, but test fail die to instruction being a graph now
|
2014-07-16 20:16:40 +03:00 |
|
Torsten Ruger
|
4185758532
|
slight rename tremours
|
2014-07-16 20:16:10 +03:00 |
|
Torsten Ruger
|
1ff7ae2b0a
|
rename method
|
2014-07-16 19:24:41 +03:00 |
|
Torsten Ruger
|
55cb6bd2d6
|
working on if
|
2014-07-16 13:20:47 +03:00 |
|
Torsten Ruger
|
3a152c1295
|
adds self to sends args
|
2014-07-15 18:34:03 +03:00 |
|
Torsten Ruger
|
4d725ea1ae
|
adds explicit load_self instruction
|
2014-07-15 18:27:13 +03:00 |
|
Torsten Ruger
|
930740e1db
|
fixes the tests after fixing hierarchy
|
2014-07-15 10:35:29 +03:00 |
|
Torsten Ruger
|
49f73c090d
|
fixed tests because of inheritance changes
|
2014-07-15 09:34:45 +03:00 |
|
Torsten Ruger
|
bb051230f4
|
fixed relation of values and types that had got watered in the virtual move
|
2014-07-15 09:31:25 +03:00 |
|
Torsten Ruger
|
102c5c2327
|
remove singletons and make them constants
|
2014-07-15 09:15:04 +03:00 |
|
Torsten Ruger
|
3ca61d54eb
|
fixes constant to be values not object. interestingly tests still pass
|
2014-07-15 09:12:51 +03:00 |
|
Torsten Ruger
|
9891da88a4
|
fix all tests
|
2014-07-15 00:00:00 +03:00 |
|
Torsten Ruger
|
b59a9da34e
|
reduce method return type to type and introduce a single instruction for instance get
|
2014-07-14 21:28:21 +03:00 |
|
Torsten Ruger
|
16a378e3da
|
fix class function test
|
2014-07-14 17:08:52 +03:00 |
|
Torsten Ruger
|
93bdd8a243
|
removing exceptions
|
2014-07-14 16:19:47 +03:00 |
|
Torsten Ruger
|
c7c4387e16
|
adds self reference and improve methods a little
|
2014-07-14 14:29:33 +03:00 |
|
Torsten Ruger
|
db8b1488d0
|
function test, slow but steady
|
2014-07-14 14:06:09 +03:00 |
|
Torsten Ruger
|
d531a24930
|
first method test
|
2014-07-14 11:29:38 +03:00 |
|
Torsten Ruger
|
c1f475070b
|
and another one, and another one....
|
2014-07-13 16:00:48 +03:00 |
|
Torsten Ruger
|
ae21863245
|
one more basic test back online
|
2014-07-13 14:12:43 +03:00 |
|
Torsten Ruger
|
dc6cb2bb52
|
a lot of work to get one more test to pass
|
2014-07-12 21:59:17 +03:00 |
|
Torsten Ruger
|
842c4e3044
|
copied old boot for later reference
|
2014-07-12 21:18:45 +03:00 |
|
Torsten Ruger
|
c505db490f
|
brainstorming mode on the new way (tm)
|
2014-07-10 17:14:38 +03:00 |
|
Torsten Ruger
|
ee5615ec03
|
fix rename
|
2014-07-01 19:12:32 +03:00 |
|
Torsten Ruger
|
f74999af57
|
zwischenstopp
|
2014-07-01 18:58:25 +03:00 |
|
Torsten Ruger
|
7045a4b256
|
update reader and implement singletons
|
2014-07-01 15:57:13 +03:00 |
|
Torsten Ruger
|
94d1140686
|
remove intel as it is in own rep now
|
2014-06-30 15:34:51 +03:00 |
|
Torsten Ruger
|
84d27ce9d9
|
remove arm as it is in own rep now
|
2014-06-30 15:28:39 +03:00 |
|
Torsten Ruger
|
1e866ae0ae
|
minor
|
2014-06-30 14:56:58 +03:00 |
|
Torsten Ruger
|
18faeeb042
|
add the idea of a frame
|
2014-06-29 19:05:35 +03:00 |
|
Torsten Ruger
|
16ceb2a60d
|
hurra, a first test. looks a lot.... but lets not spoil th efeeling
|
2014-06-26 18:39:02 +03:00 |
|
Torsten Ruger
|
525f9d45c5
|
rename
|
2014-06-26 17:52:15 +03:00 |
|
Torsten Ruger
|
33c62a7db1
|
update reader
|
2014-06-26 17:48:33 +03:00 |
|
Torsten Ruger
|
9d0d5aa431
|
update reader
|
2014-06-26 11:34:48 +03:00 |
|
Torsten Ruger
|
b9ddd75a33
|
rewrote with ternary operator for conciseness
|
2014-06-25 16:03:39 +03:00 |
|
Torsten Ruger
|
d28df7671d
|
add the simplest possible hash replacement with tests
|
2014-06-25 16:00:24 +03:00 |
|
Torsten Ruger
|
5c887846f0
|
updates
|
2014-06-25 15:59:22 +03:00 |
|
Torsten Ruger
|
fe337fad79
|
rename and a tiny start
|
2014-06-25 15:20:46 +03:00 |
|
Torsten Ruger
|
e41bb8027d
|
copies of the old code to start the new layer
|
2014-06-25 02:47:59 +03:00 |
|
Torsten Ruger
|
9b39a3a816
|
renaming, making space for extra layer
|
2014-06-25 02:33:44 +03:00 |
|
Torsten Ruger
|
3771f44e62
|
just moving code around
|
2014-06-24 19:34:36 +03:00 |
|
Torsten Ruger
|
98de7404ef
|
named syscall register
|
2014-06-24 12:40:49 +03:00 |
|
Torsten Ruger
|
17904d8e02
|
rename blocks do_add to be the same as sunctions add_code to blur the difference
|
2014-06-24 12:36:32 +03:00 |
|
Torsten Ruger
|
43a2649635
|
new list test and debugs
|
2014-06-24 12:25:03 +03:00 |
|
Torsten Ruger
|
b8b1d98a7c
|
towards rubys true definition
|
2014-06-24 12:24:36 +03:00 |
|
Torsten Ruger
|
bc89da0bc1
|
instance setter
|
2014-06-24 12:23:58 +03:00 |
|
Torsten Ruger
|
07b98d684a
|
more on method lookup
|
2014-06-24 12:23:39 +03:00 |
|
Torsten Ruger
|
98e25abf8e
|
broaden ifs possibilities
|
2014-06-24 12:22:32 +03:00 |
|
Torsten Ruger
|
25c5b2da6e
|
more setter work
|
2014-06-24 12:20:59 +03:00 |
|
Torsten Ruger
|
dc198ac79f
|
more setter work
|
2014-06-24 12:20:38 +03:00 |
|
Torsten Ruger
|
9251bab507
|
add setter and remove debug
|
2014-06-24 12:20:10 +03:00 |
|
Torsten Ruger
|
a859951a8f
|
slight cleanup and rename test case
|
2014-06-17 14:25:33 +02:00 |
|
Torsten Ruger
|
7d05b7c42f
|
adds plocks (Proc Block) as descibed in posts. Usage also described, but not coded yet
|
2014-06-17 01:01:00 +02:00 |
|
Torsten Ruger
|
a68d84a781
|
introducing references
|
2014-06-14 23:48:12 +03:00 |
|
Torsten Ruger
|
4db54a760e
|
gives values their own directory and seperate files
|
2014-06-14 21:29:57 +03:00 |
|
Torsten Ruger
|
87fa71277a
|
some inlining and renaming
|
2014-06-14 11:12:53 +03:00 |
|
Torsten Ruger
|
0dbaebf647
|
fix all tests and a little cleaning
|
2014-06-14 10:59:25 +03:00 |
|
Torsten Ruger
|
2c26415de7
|
transformations according to todays post
|
2014-06-14 00:19:12 +03:00 |
|
Torsten Ruger
|
12a92e4db0
|
move boot* classes to boot directory
|
2014-06-13 23:51:53 +03:00 |
|
Torsten Ruger
|
a7551ea8b6
|
still working on the method dispatch
|
2014-06-13 23:41:45 +03:00 |
|
Torsten Ruger
|
017d93d929
|
add to_asm debug output functions
|
2014-06-12 21:40:25 +03:00 |
|
Torsten Ruger
|
dcd691fe00
|
minor
|
2014-06-12 21:27:47 +03:00 |
|
Torsten Ruger
|
6d6c7ddb68
|
register assignment fix (was not taking subsequent calls into account)
|
2014-06-12 21:27:30 +03:00 |
|
Torsten Ruger
|
200da192b4
|
improve output
|
2014-06-12 21:04:15 +03:00 |
|
Torsten Ruger
|
ea0572c836
|
fixed while compilation (block order) and fixed and improved fibo
|
2014-06-12 16:23:57 +03:00 |
|
Torsten Ruger
|
8da1bc4645
|
fix putint (too eager optimization broke it)
|
2014-06-12 13:47:06 +03:00 |
|
Torsten Ruger
|
506f98da5a
|
fixed foo and hello, next putint
|
2014-06-12 09:07:03 +03:00 |
|
Torsten Ruger
|
eef6744827
|
fixes the if test (regs again)
|
2014-06-12 08:34:46 +03:00 |
|
Torsten Ruger
|
b125a7c5c7
|
fix passes, add noop reduction, remove the wretched value operators
|
2014-06-11 21:36:22 +03:00 |
|
Torsten Ruger
|
4e6319b753
|
inrtoduce block passes. move the allocation there and implement those simple optimisations
|
2014-06-11 11:41:50 +03:00 |
|
Torsten Ruger
|
7cca50cd3a
|
still recoving from previous block - function change. no more exceptions at least
|
2014-06-11 00:38:46 +03:00 |
|
Torsten Ruger
|
e9519d4f05
|
move the code insertion functionality up to function. makes more sense. block still carries code though
|
2014-06-10 23:57:56 +03:00 |
|
Torsten Ruger
|
e9fc8ac6aa
|
making the third arg of block init explicit (not optional)
|
2014-06-10 18:51:27 +03:00 |
|
Torsten Ruger
|
7ca3207b3e
|
moved registers to machine, changed return to 0 (from 7) and erased all integer references to registers
|
2014-06-10 13:29:01 +03:00 |
|
Torsten Ruger
|
d7a60f2803
|
new register allocation generates good looking push/pop
|
2014-06-09 19:24:09 +03:00 |
|
Torsten Ruger
|
b66c4157d5
|
keep track of used and assigned registers for each block
|
2014-06-08 01:41:56 +03:00 |
|
Torsten Ruger
|
fbcfa844de
|
renaming and small fixes
|
2014-06-08 00:56:40 +03:00 |
|
Torsten Ruger
|
e7bb774da0
|
fix block insert ordering with depth > 1
|
2014-06-08 00:56:15 +03:00 |
|
Torsten Ruger
|
42a840614e
|
adding call counter and splitting block after call
|
2014-06-08 00:55:18 +03:00 |
|
Torsten Ruger
|
0a14cffefb
|
fixing fragment tests, most done
|
2014-06-07 23:22:32 +03:00 |
|
Torsten Ruger
|
6b715bbb1b
|
remoe hash attributes (less magic) and make attributes on context explicit
|
2014-06-07 22:41:02 +03:00 |
|
Torsten Ruger
|
36f237c633
|
removed the (too) fancy dsl. Also introduce register indirection
|
2014-06-07 17:59:44 +03:00 |
|