On Sat, Jul 22, 2006 at 02:50:24AM +0900, Charles O Nutter wrote: > Second, RCR328 details a potential mechanism for launching a Ruby script > either out-of-process (spawned) or as an in-process MVM. Oh, thanks for pointing this out. I'm working on a Sandbox.run(path) which will run the script and set $0, ARGV, etc appropriately. Ruby could just alias run_script to that. I've already got Script.load working and globals are sandboxed, so I'm very close to getting this done. > With _why's sandboxing extension, JRuby's existing MVM support, and YARV's > future MVM support, it would seem we're all working toward similar goals. Yeah, once things start to stabilize, we should definitely craft some kind of an overarching API for managing multiple interpreters. I've started to carve out the stuff I'd like to expose in sand_table.h. Stuff like defining classes in a specific interpreter, copying methods from one interpreter to another, copying interpreter insides, etc. One of the things I keep wondring: a way to serialize the interpreter and pass it between YARV, JRuby, and Ruby 1.8.5+. We wouldn't be able to serialize some things, but what's left could be useful. _why