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)

(c) 2011 Kaspar Schiess