Commit Graph

194 Commits

Author SHA1 Message Date
Torsten Ruger
3e18694be7 code for method 2015-05-24 16:24:57 +03:00
Torsten Ruger
38cb9f7d3c get words to compare to strings 2015-05-24 15:31:44 +03:00
Torsten Ruger
b58bba3fc4 register access fixes
since the constants moved
2015-05-24 15:31:30 +03:00
Torsten Ruger
05a7ded7d5 fix space layout and init 2015-05-24 15:06:35 +03:00
Torsten Ruger
6786855e95 start on passes
after all that booting and vm/parfait changes
passes have gone out of sync, start to fix
2015-05-24 13:55:05 +03:00
Torsten Ruger
47abdffd1a minor 2015-05-24 13:54:17 +03:00
Torsten Ruger
3c0022191b more booting 2015-05-24 13:53:49 +03:00
Torsten Ruger
e64733d72b some link for readmes
for salama-reader
2015-05-24 13:42:29 +03:00
Torsten Ruger
1a499a1de9 fix method seperation
Since Compiled method split into Method and
CompiledMethodInfo (parfait/vm) lots of call
syntax changes
2015-05-24 13:31:33 +03:00
Torsten Ruger
1d9ef6d5c8 boot process 90 percent done
Creating the class and layout objects in the
right order was tricky, but  now mostly done
2015-05-23 12:15:06 +03:00
Torsten Ruger
94f49bf5c2 much work on boot process
fiddly egg and chicken, though a bit clearer with parfait objects now
2015-05-22 22:51:36 +03:00
Torsten Ruger
174afb33fb catch errrors 2015-05-22 22:50:40 +03:00
Torsten Ruger
a28b41a5f5 renamed adapter
seemed more appropriate as it makes the
parfait work in the vm (i.e. adapts parfait)
2015-05-21 21:49:47 +03:00
Torsten Ruger
422ec64105 all green
That fixes all existing tests. Operation successful

Off course there is tests missing :-(
2015-05-20 17:29:08 +03:00
Torsten Ruger
6eba363fb8 more speration
Separating vm and parfait
especially in method this is hairy, lots of ripples
bug is back in sod (i hope thats a good thing)
2015-05-20 17:11:13 +03:00
Torsten Ruger
d6d0f4f43a split compiled_method into method and compiled_method_info 2015-05-20 16:43:26 +03:00
Torsten Ruger
06cfba7c58 get sod to output lists and dicts 2015-05-20 10:57:20 +03:00
Torsten Ruger
8ec8a519ba externalize boot process
Booting is complicated, make an own file for it
2015-05-19 20:29:33 +03:00
Torsten Ruger
4e3640e432 shift code from class to module
as class derives from module, module carries
much of the code that one thinks of as class
class only handles allocation really
2015-05-18 12:35:01 +03:00
Torsten Ruger
cfc2c474b2 test compatibility layer
test from and to std/parfait objects
for list and word for now
moved some of that code to virtual, out of parfait
2015-05-18 10:47:29 +03:00
Torsten Ruger
f7eb888c36 refactoring virtual parfait code 2015-05-18 10:21:23 +03:00
Torsten Ruger
1114f06921 rename old layout()
new is called get_layout, but keep old around for
checking
2015-05-17 14:41:18 +03:00
Torsten Ruger
fe2be323d8 improve boot
also move to superclass not superclass_name in class
Makes ripples
2015-05-16 20:16:49 +03:00
Torsten Ruger
7085dee510 array to list conversion
start on layouts
2015-05-16 14:01:48 +03:00
Torsten Ruger
bee269f7a8 just renaming 2015-05-16 12:54:11 +03:00
Torsten Ruger
9376b8bc16 work on ObjectWriter
Back to the root! but lots of adjusting
ObjectWriter takes machine, machine has space
Virtual constants become Parfait::Objects etc
2015-05-16 12:53:10 +03:00
Torsten Ruger
9d8dc68bf4 fixing all tests 2015-05-15 21:11:44 +03:00
Torsten Ruger
0731a6061a fix word implementation and tests
much better, though wasteful implementation
breaks a few tests, but ploughing on first
2015-05-15 16:45:36 +03:00
Torsten Ruger
9d711e7766 moving string to parfait
using parfait::word
also rename builtins string to word
2015-05-13 16:17:10 +03:00
Torsten Ruger
baca6eb4c6 rename string to word 2015-05-13 16:06:38 +03:00
Torsten Ruger
bf5576f805 small clean 2015-05-13 12:22:51 +03:00
Torsten Ruger
f92e5cf475 fix all tests again 2015-05-13 12:15:14 +03:00
Torsten Ruger
dd41758dea renamed array and hash to list and dictionary
Since these are not the ruby classes, we don’t need
the old names. They are misleading.
An Array is a military term, we mean list
And a Hash is an implementation of a Dictionary,
or LookupTable
2015-05-12 19:10:45 +03:00
Torsten Ruger
398516a596 fixes parfaits hash by implementing array
basic concept holds up as parfaits hash is now
working on parfaits own array
2015-05-12 18:52:01 +03:00
Torsten Ruger
b980def84e move space to parfait
Also make the machine the singleton
and space hang off it

Many repercussions, not all fixed in this commit
2015-05-12 15:36:44 +03:00
Torsten Ruger
2e8b514e9c start to use parfait classes
bit of a bumpy road
2015-05-12 14:58:29 +03:00
Torsten Ruger
73a6a5db39 move meta and boot class to parfait
just cosmetic, fixed requires but not code
2015-05-12 09:54:36 +03:00
Torsten Ruger
b804354236 fix requires and some scoping 2015-05-12 09:44:34 +03:00
Torsten Ruger
a552e3fbce remove virtual frame (just using parfait) 2015-05-10 17:12:43 +03:00
Torsten Ruger
d41676fdfd namespace cleanup
remove unnecessary Virtual namespace prefix
which was a large motivation for the move
2015-05-08 15:19:30 +03:00
Torsten Ruger
de8fe46fe0 move compiler into virtual
and associated changes in code, requires tests etc
2015-05-08 15:10:30 +03:00
Torsten Ruger
6f2affaf36 fix name expression and test
plus various cleaning and rename off call_site
2015-05-08 14:34:46 +03:00
Torsten Ruger
9bf5eb2621 somewhat correct that message at compile-time idea 2015-05-06 15:15:33 +03:00
Torsten Ruger
1feed6af44 create one file per instruction 2015-05-06 08:55:14 +03:00
Torsten Ruger
4f1508ca61 moved slots to own directory 2015-05-06 08:38:29 +03:00
Torsten Ruger
cdea4915f9 bit more cleanup after compiler 2015-05-05 15:11:09 +03:00
Torsten Ruger
001af3f8b6 reviving more tests 2015-05-05 14:04:37 +03:00
Torsten Ruger
e4c799ecb6 first tests comping through after ast/compile change 2015-05-04 23:03:52 +03:00
Torsten Ruger
92bbd70c77 move builtin to register, where it belongs 2015-05-04 11:12:31 +03:00
Torsten Ruger
3659cb4b81 make the tests run (and pass) again 2015-05-04 11:10:40 +03:00