V
Victor \Zverok\ Shepelev
Hi all.
A bit of philosophy.
We have Marshal[1] to serializing Ruby's objects (and also YAML and so on).
AFAIK, Rails community even uses objects serialization for program's state
saving.
But, existing marshalling/serialization can serialize only data, not plain
code; this fact is restricting for their applications. For example,
Smalltalk-style "image" (entire program state, which can be loaded and
continued) is impossible.
But! We have a method for translating code-to-data - ParseTree[2], and we
even have method to translate back data-to-code (though a bit roundabout) -
ruby2ruby[3].
Had somebody thought about gathering all this to create full solution for
entire running program "saving" and "loading"? (Or, may be, somebody already
done this and I'm missing?)
It can be really cool. And it seems completely possible.
V.
1. http://www.ruby-doc.org/core/classes/Marshal.html
2. http://rubyforge.org/projects/parsetree
3. http://seattlerb.rubyforge.org/ruby2ruby/
A bit of philosophy.
We have Marshal[1] to serializing Ruby's objects (and also YAML and so on).
AFAIK, Rails community even uses objects serialization for program's state
saving.
But, existing marshalling/serialization can serialize only data, not plain
code; this fact is restricting for their applications. For example,
Smalltalk-style "image" (entire program state, which can be loaded and
continued) is impossible.
But! We have a method for translating code-to-data - ParseTree[2], and we
even have method to translate back data-to-code (though a bit roundabout) -
ruby2ruby[3].
Had somebody thought about gathering all this to create full solution for
entire running program "saving" and "loading"? (Or, may be, somebody already
done this and I'm missing?)
It can be really cool. And it seems completely possible.
V.
1. http://www.ruby-doc.org/core/classes/Marshal.html
2. http://rubyforge.org/projects/parsetree
3. http://seattlerb.rubyforge.org/ruby2ruby/