rubyx/lib/vm
2014-05-08 14:14:15 +03:00
..
block.rb adjust program tests to new syntax, hello world works there too -) 2014-05-08 14:14:15 +03:00
code.rb crystal says Hello. 2014-05-06 21:36:28 +03:00
context.rb move kernel to core and apply the classmethod pattern to all core classes 2014-05-06 12:47:07 +03:00
function_call.rb crystal says Hello. 2014-05-06 21:36:28 +03:00
function.rb crystal says Hello. 2014-05-06 21:36:28 +03:00
instruction.rb cleanup 2014-05-05 15:59:29 +03:00
machine.rb so close i can smell it, checkpoint 2014-05-03 22:18:04 +03:00
program.rb adjust program tests to new syntax, hello world works there too -) 2014-05-08 14:14:15 +03:00
README.markdown created own directory for parser 2014-04-27 15:38:07 +03:00
values.rb crystal says Hello. 2014-05-06 21:36:28 +03:00

Virtual Machine

This is the logic that uses the generated ast to produce code, using the asm layer.

Apart from shuffeling things around from one layer to the other, it keeps track about registers and provides the stack glue. All the stuff a compiler would usually do.

Also all syscalls are abstracted as functions.