I firmly beleive that it makes much more sense to make Pike "pure" (ie. no global variables) and then instansiate more than one interpreter in the same process, each with it's own interpreter lock and thread(s).
If one does that, one could create some Pike abstraction for passing data between the interpreters, which could potentially be more efficient than ordinary interprocess communication.
A "pure" pike is also good for anyone who wants to embed pike into other programs.
/ Niels Möller (vässar rödpennan)
Previous text:
2004-02-01 20:56: Subject: Re: Default backend and thread backends?
Yeah, but those machines are uncommon enough that the amount of work required doesn't make much sense. Also, even if you *do* have a 4-cpu machine, you would also need a pike program which is using 4+ threads and spending a lot of time in the interpreter...
I firmly beleive that it makes much more sense to make Pike "pure" (ie. no global variables) and then instansiate more than one interpreter in the same process, each with it's own interpreter lock and thread(s).
The only question is weather a "pure" Pike is worth the effort, as most modern operating systems can create a new process fast enough that running a separate process for each interpreter is just as easy.
/ Fredrik (Naranek) Hubinette (Real Build Master)