A virtual machine for something almost like ruby.
The verneuil process produces artificial rubies that are somewhat unlike real rubies - they are too pure and don’t have the characteristics of real ones.
This is a virtual machine that:
* executes something that is almost Ruby (it looks like it)
* and that can store its state to disk. And resume.
Think: Continuations. Serializable.
Is it useful? That depends. You could for example use this to
* script website interaction with your user
* create scripts that run for days/months
* create crash safe programs (checkpoints? transactions?)
* transfer running programs over the wire (agents!)?
* and perhaps more
STEREOID-CODE
Verneuil is eval on stereoids.
SYNOPSIS
code = "puts 42"
program = Verneuil::Compiler.compile(code)
process = Verneuil::Process.new(code, self)
process.run # prints 42 to the console.
STATUS
Verneuil currently handles all the programs in spec/programs. The following Ruby features should work:
* Method calls
* Local variables
* Method definitions
* if then else
* while
* Masking class methods
* correct self
* fork, join
Currently this project lays sleeping for a few months - until I will need it again. That day is sure to come.
CONTRIBUTORS
Florian Hanke (florianhanke.com) Kaspar Schiess (absurd.li)
© 2011 Kaspar Schiess