On Tue 21 Feb 2006 21:10, Bradley Arsenault wrote: > 1) A full, version and operating system portable vm dump, if desired
IMHO, a far better solution would be to use Stackless Python[1]... a python implementation that doesn't use the C stack. It supports microthreads[2], along with serializing them in the middle of execution[3]. (This is really all we need.) One thing to note is that stackless does not yet support python2.4. However, this is planned for a PyCon sprint[4]. > Cons: > 1) Is a large dependancy In the case of stackless, it would be worth considering including it in the distribution, especially as it doesn't have a release. This is how Blender and (I assume) EVE Online[5] do it. (Although, Blender uses standard CPython.) This would also allow cutting out unneeded modules. (Who needs to decode MIME email headers in a map script???) > 2) Can allow a hacker access to the underlieing system if he/she > is experienced enough and willing to work around all inplace security > features (python does have them) It might be better to say that python _had_ them. The restricted execution framework was disabled in python2.3[6]. Perhaps omitting the 'os' and 'sys' modules and the 'file' type would be all that is necessary. At any rate, Blender had a _browser pluggin_ that would execute python code, so it's not like glob2 would be the first. I think that from a technical standpoint, python would work. The question I see now is, "is it overkill?" Although I would love to use my favorite language in my favorite computer game, Lua or Tea might work just as well, with far less overhead ... so ... I guess I'm not being much help here :D MWM [1] http://www.stackless.com/ [2] http://www.stackless.com/wiki/Tasklets [3] http://www.stackless.com/wiki/Pickling [4] http://www.stackless.com/Members/rmtew/pycon2006 [5] http://www.stackless.com/Members/rmtew/newsPyCon2006Pres [6] http://python.org/doc/lib/restricted.html _______________________________________________ glob2-devel mailing list [email protected] http://lists.nongnu.org/mailman/listinfo/glob2-devel
