Torsten Ruger
|
8942f42310
|
adds collect for the statements
|
2017-04-08 12:10:42 +03:00 |
|
Torsten Ruger
|
0fe5685ad4
|
makes own file for statement base class
adds some functionality to it
moves the requires from compiler there
|
2017-04-08 12:09:25 +03:00 |
|
Torsten Ruger
|
db8f99409b
|
move vool statements into own directory
also tests for guard to work
|
2017-04-06 19:11:11 +03:00 |
|
Torsten Ruger
|
3fe286b5ed
|
enforces data encapsulation in vool tree
gets rid of attraccessor
|
2017-04-06 16:06:51 +03:00 |
|
Torsten Ruger
|
b9caad937a
|
rename bools compiler to ruby_compiler
as that is what is does, compile ruby strings into vool st
|
2017-04-06 15:36:41 +03:00 |
|
Torsten Ruger
|
3683aa8976
|
vool method fix
|
2017-04-06 14:02:18 +03:00 |
|
Torsten Ruger
|
488af5b8f7
|
small cleanup
|
2017-04-05 14:03:48 +03:00 |
|
Torsten Ruger
|
bc0b71d0cd
|
test local variables
need the assignenment first in the same scope so parser knows its a lvar
|
2017-04-05 14:03:36 +03:00 |
|
Torsten Ruger
|
4de57dbe4d
|
start a vool readme
|
2017-04-05 14:02:34 +03:00 |
|
Torsten Ruger
|
20542d1e8b
|
exclude vool compiler from normal rules
that’s the visitor pattern for you.
|
2017-04-05 14:02:18 +03:00 |
|
Torsten Ruger
|
de8b48975b
|
adds logical statements to vool
|
2017-04-04 18:35:15 +03:00 |
|
Torsten Ruger
|
91fdfb0c1e
|
remove unused classes and cases from vool
|
2017-04-04 18:21:11 +03:00 |
|
Torsten Ruger
|
d6e346d9c0
|
adds instance assignment to vool
|
2017-04-04 18:10:28 +03:00 |
|
Torsten Ruger
|
73964aeb6e
|
adds modules to vool
|
2017-04-04 18:00:21 +03:00 |
|
Torsten Ruger
|
5f70067fa0
|
adds instance and class variables to vool
|
2017-04-04 14:04:35 +03:00 |
|
Torsten Ruger
|
83ab197d03
|
fix and test vool return statement
|
2017-04-04 10:42:20 +03:00 |
|
Torsten Ruger
|
c545bfdfc6
|
adds while statement to vool
|
2017-04-03 11:49:21 +03:00 |
|
Torsten Ruger
|
5335d08408
|
more condition tests
|
2017-04-02 22:52:31 +03:00 |
|
Torsten Ruger
|
ffbe39d571
|
order test requires
easier to spot missed tests (when guard and cmd-line differ)
|
2017-04-02 22:42:51 +03:00 |
|
Torsten Ruger
|
16a55d9f95
|
include same directory helpers
(not one above as falsely was)
|
2017-04-02 19:13:14 +03:00 |
|
Torsten Ruger
|
f343ad934c
|
a start on conditionals
|
2017-04-02 19:12:42 +03:00 |
|
Torsten Ruger
|
443fd13980
|
adds super
with and without args
current thinking is to fill the name of the method later as we carry no
context currently, but this may change
|
2017-04-02 18:42:52 +03:00 |
|
Torsten Ruger
|
ac7b9138ff
|
bit of cleaning
|
2017-04-02 18:25:30 +03:00 |
|
Torsten Ruger
|
539ab692a3
|
add scope and kwbegin
scope is just a list of statements
|
2017-04-02 13:24:09 +03:00 |
|
Torsten Ruger
|
27e4e9f501
|
add assignment and self
|
2017-04-02 12:59:07 +03:00 |
|
Torsten Ruger
|
d62e996f7c
|
add send statement
|
2017-04-02 12:57:05 +03:00 |
|
Torsten Ruger
|
93f9d16209
|
add vool hashes
|
2017-04-02 10:57:39 +03:00 |
|
Torsten Ruger
|
d5af6dad42
|
adds arrays to vool
also symbols and some cleanup
|
2017-04-02 10:43:22 +03:00 |
|
Torsten Ruger
|
8f03d98330
|
adds basic values (bools ints strings)
|
2017-04-02 09:44:56 +03:00 |
|
Torsten Ruger
|
b341c722fd
|
copied stash over
|
2017-04-01 21:28:57 +03:00 |
|
Torsten Ruger
|
34fdf7b2cd
|
adds method_statement to vool
|
2017-04-01 16:27:32 +03:00 |
|
Torsten Ruger
|
295782d9e6
|
start on vool, the virtual oo language
start with syntax tree, not linked into existing code until finished
|
2017-04-01 15:57:39 +03:00 |
|
Torsten Ruger
|
b756d275e4
|
update collector to estimate bootstrap size
|
2017-01-19 09:08:59 +02:00 |
|
Torsten Ruger
|
aa79e41d1c
|
rename register to risc
seems to fit the layer much better as we really have a very reduced
instruction set
|
2017-01-19 09:02:29 +02:00 |
|
Torsten Ruger
|
da5823a1a0
|
move parfait up one, as per its module structure
|
2017-01-18 20:09:43 +02:00 |
|
Torsten Ruger
|
f0c0128b38
|
improve to_code a bit
variable names mainly, some description
|
2017-01-18 12:24:15 +02:00 |
|
Torsten Ruger
|
a39fc76a12
|
create vm file to require vm parts
|
2017-01-18 08:45:42 +02:00 |
|
Torsten Ruger
|
7abd777d05
|
rename melon to rubyx
melon was still from the salama days and rubyx describes it much better
|
2017-01-18 00:05:36 +02:00 |
|
Torsten Ruger
|
48d32a2b8e
|
hello world in ruby works
doesnt do much dynamic things though
|
2017-01-17 21:27:20 +02:00 |
|
Torsten Ruger
|
10d75e136f
|
defining constants in melon to match classes in vm
|
2017-01-17 21:26:28 +02:00 |
|
Torsten Ruger
|
9c83423e50
|
bug hunting for class recreation
|
2017-01-17 21:25:58 +02:00 |
|
Torsten Ruger
|
54b8a9f6de
|
minor
|
2017-01-17 21:25:18 +02:00 |
|
Torsten Ruger
|
2a57a59c8e
|
do not create already existing classes
wrong logic, also messes with parfait
|
2017-01-17 21:25:02 +02:00 |
|
Torsten Ruger
|
cd211f970f
|
make method creation class methods in MethodCompiler
and pass the wish to use main explicitly, which is really a test
feature
|
2017-01-17 21:23:58 +02:00 |
|
Torsten Ruger
|
0c64e367d5
|
rename compiler test accrding to convention
|
2017-01-17 21:22:53 +02:00 |
|
Torsten Ruger
|
7223ca9a1c
|
clean and refactor
|
2017-01-16 17:44:34 +02:00 |
|
Torsten Ruger
|
091900ef1c
|
move test helpers up, so they can be used in Melon too
|
2017-01-16 17:43:39 +02:00 |
|
Torsten Ruger
|
4ba182a822
|
rename compilers to passses
|
2017-01-16 17:24:32 +02:00 |
|
Torsten Ruger
|
8dbbffd58e
|
fix tests for NameExpression split
also necessitates giving method name without the wrapping expression
which is simpler anyway
|
2017-01-16 09:34:47 +02:00 |
|
Torsten Ruger
|
5f7ea08a43
|
Splitting NameExpression into three, Known,Local,Argument
The decision which to use can be made higher up, in ruby, and so it
should.
|
2017-01-16 09:33:49 +02:00 |
|