I'm looking for a way to have more than one instance of one interpreter runing in the same process with diferente privileges. ( more specifically in a web development I'm doing I want to provide for users a light and safe script language to then be able to adapt the generated pages or even create samll and simple applications) I'm using ruby as my development language and couldn't find a way to do that with eval. (eval allays use the same global context and the global variable $SAFE is used every where it's fine at first but would be better if we can exec a eval with a high priority without change our own context) I've looking as possible aux languages in boa, gsl (xitami), SteelBlue, and none of then has an easy integration with ruby, so I started looking in ruby source code to see how hard it'll be to adapt it. For my surprise I encountered a lot of global and static variables variables that prevent the possibilitie of have more than one ruby interpreter instance or even to link it with other applications without a bit of headack with variables name conflict. A soluction I saw for that and to facilitate things in the future is to create a interpreter struct to hold each instance values, well this has the problem that lots of functions should be modified to pass forward that pointer, the other possibilitie is to include a pointer reference to the RBasic structure pointing to the interpreter struct that it belongs, less code changes and the ability to identify from which interpreter each object belongs. Please give your point of view about it ! # Most mem accept the world the way it is # but some of us want it the way we like