Artificial Rubies. Using a fusion process.
Ruby
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
bin
examples
lib
spec
.gitignore
.travis.yml
Gemfile
Guardfile
HISTORY.txt
LICENSE
README
Rakefile
verneuil.gemspec

README

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-2015 Kaspar Schiess