Commit Graph

321 Commits

Author SHA1 Message Date
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
422ec64105 all green
That fixes all existing tests. Operation successful

Off course there is tests missing :-(
2015-05-20 17:29:08 +03:00
2ec9ee90f9 forgot to init super
which caused the fake_mem to be nil
2015-05-20 17:17:11 +03:00
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
d6d0f4f43a split compiled_method into method and compiled_method_info 2015-05-20 16:43:26 +03:00
dd2a5e367f more docs and better read me 2015-05-20 13:50:56 +03:00
d71547ea01 copy and other improvements for word
more tests reveal a bug (fixed) and more docs
2015-05-20 13:50:25 +03:00
06cfba7c58 get sod to output lists and dicts 2015-05-20 10:57:20 +03:00
8ec8a519ba externalize boot process
Booting is complicated, make an own file for it
2015-05-19 20:29:33 +03:00
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
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
d348e7afe7 more parfait ripples
changes due to previous changes in parfait api
2015-05-18 10:10:31 +03:00
cff827ad42 final word fix
that does the parfait
2015-05-17 15:34:45 +03:00
e70bfb9f7a many minor parfait fixes 2015-05-17 15:34:29 +03:00
3bdba119c8 fix the list after object fixes
start index at 1, but don’t overwrite layout,
so add one
2015-05-17 14:56:06 +03:00
1114f06921 rename old layout()
new is called get_layout, but keep old around for
checking
2015-05-17 14:41:18 +03:00
350d708fd3 introduce some constants 2015-05-17 14:40:02 +03:00
fe2be323d8 improve boot
also move to superclass not superclass_name in class
Makes ripples
2015-05-16 20:16:49 +03:00
7085dee510 array to list conversion
start on layouts
2015-05-16 14:01:48 +03:00
bee269f7a8 just renaming 2015-05-16 12:54:11 +03:00
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
f691ba1b20 using sof is_value 2015-05-15 21:11:29 +03:00
a46dd9f6bf more word tests 2015-05-15 20:31:43 +03:00
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
164816c441 basic word functionality
and conversion from string
2015-05-14 20:39:12 +03:00
5e0e8c8364 move index_of to list
and give it a sort of basic implementation
2015-05-14 19:54:38 +03:00
c2b84925a4 basic functions for object 2015-05-14 19:53:56 +03:00
9d711e7766 moving string to parfait
using parfait::word
also rename builtins string to word
2015-05-13 16:17:10 +03:00
baca6eb4c6 rename string to word 2015-05-13 16:06:38 +03:00
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
a94ce51c58 also test array
minor (ahm) fixes to array logic
2015-05-12 19:03:14 +03:00
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
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
2e8b514e9c start to use parfait classes
bit of a bumpy road
2015-05-12 14:58:29 +03:00
73a6a5db39 move meta and boot class to parfait
just cosmetic, fixed requires but not code
2015-05-12 09:54:36 +03:00
b804354236 fix requires and some scoping 2015-05-12 09:44:34 +03:00
ab870e3323 moved the whole parfait into its namespace/module 2015-05-11 18:55:49 +03:00
a552e3fbce remove virtual frame (just using parfait) 2015-05-10 17:12:43 +03:00
618b8d05f8 adding ruby method lists
Just for reference (not to copy)
2015-04-15 11:39:12 +03:00
5792fb983b add module
between class and object, as in ruby
2015-04-15 11:38:46 +03:00
aaf6da8808 make object derivation explicit
in parfait
2015-04-08 20:33:15 +03:00
81e3a98af8 add integer to parfait 2015-04-08 20:32:56 +03:00
fdb3fbc825 Parfait documentation
outline of expanded parfait, documented but not coded
2015-04-08 20:24:50 +03:00
4f1e99d744 adding stubs for coming classes 2015-04-06 11:38:11 +03:00
aee36d9f5f bit of line wrapping 2015-03-25 17:29:39 +02:00
d758a23eb6 correct parfait module
parfait only needs to be in a module when it is used in the vm, not
when it is parsed.
The parsed parfait must be without namespace.
2015-03-25 17:16:20 +02:00
df9d6284ae up to, ut not including, creating frames 2014-09-24 18:25:18 +03:00
892f251d18 implement how send should work (but parfait doesn't parse yet, so it doesnt) 2014-09-23 20:16:05 +03:00
bbcfef3c43 make a little more real 2014-09-16 16:05:38 +03:00
d94ec6c72c fix parfait test 2014-09-04 14:22:28 +03:00