Find file
Fetching contributors…
Cannot retrieve contributors at this time
52 lines (37 sloc) 1.35 KB
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
Verneuil is *eval* on stereoids.
code = "puts 42"
program = Verneuil::Compiler.compile(code)
process =, self) # prints 42 to the console.
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.
Florian Hanke (
Kaspar Schiess (
(c) 2011-2015 Kaspar Schiess