contents
- Portability
- Speed
- Lightness
- Isolation
Attributes
Portability
The ability to spawn children needs to be done in a way which is portable across implementations. This means a consistent API, but it is also an attempt to reduce the number of libraries which use non-portable mechanisms for spawning child Ruby processes (VM's). popen(), fork(), system(), and similiar should all be replaced by MVM API when calling child Ruby processes (VM's). Or at least encouraged...
Speed
The ability to spawn a VM as fast as possible. It should be faster than spawning a whole runtime.
Lightness
Children VM's should use less resources than spawning a whole runtime. Sharing memory or structures?
Isolation
Each VM should be able to act in isolation of any other VM
Last modified: 2008-01-30