[pypy-dev] connecting multiple interpreters
Christian Tismer
tismer at stackless.com
Mon Jun 4 22:04:57 CEST 2012
On 6/4/12 4:26 PM, Michael Foord wrote:
>
>
> On 4 June 2012 14:33, Armin Rigo <arigo at tunes.org
> <mailto:arigo at tunes.org>> wrote:
>
> Hi Martijn, hi Holger,
>
> On 6/1/12, Martijn Faassen <faassen at startifact.com
> <mailto:faassen at startifact.com>> wrote:
> > Concerning performance overhead of proxies, lifecycle issues
> would be
> > tricky
>
> If, hypothetically speaking, there is someone interested in writing a
> PyPy solution where both a Python2 and a Python3 interpreter are
> running in the same process, then you gain the advantage of having
> only one GC to run both. At least it transparently solves the issues
> of lifetime and reference cycles. (You also have for free only one
> JIT, which can do cross-language optimizations like inlining a Python2
> function into a Python3 context or vice-versa). I see these two
> points as benefits that you don't have in any multi-process solution.
>
> It would require some work on the PyPy side, and I'm not aware of
> anybody ready to invest time in that, but it shouldn't be particularly
> hard (once PyPy's Python3 interpreter is ready, and once people agree
> about which API to use to do cross-language calls.)
>
>
>
>
> Having multiple interpreter instances within a single process allows
> for lots of interesting possibilities. IronPython permits this and it
> was used by Resolver One - just one of the reasons (along with the
> GIL) that it would have been much harder to write Resolver One in
> CPython than in IronPython (although .NET was chosen as a platform
> before Python was chosen as an implementation language).
>
> Allowing Python 2 and Python 3 to live within the same process would
> be very interesting.
I too like this idea very much, because _that_ removes the need for a
decision which
I really can't base upon taste, but module availabilities,
PyPy-readiness etc.
Such a bridge would be very cool and quite 'peace-making' if may say so.
When thinking of it, a slightly crazy concern popped up:
I just followed the pyvenv discussions. PEP 405 will not be back-ported
to Python2.7.
If we now have two interpreter versions in one binary, which one of
the Janus-heads will lead decisions like pyvenv startup?
just-semi-seriously ;-) -- chris
--
Christian Tismer :^)<mailto:tismer at stackless.com>
tismerysoft GmbH : Have a break! Take a ride on Python's
Karl-Liebknecht-Str. 121 : *Starship* http://starship.python.net/
14482 Potsdam : PGP key -> http://pgp.uni-mainz.de
work +49 173 24 18 776 mobile +49 173 24 18 776 fax n.a.
PGP 0x57F3BF04 9064 F4E1 D754 C2FF 1619 305B C09C 5A3B 57F3 BF04
whom do you want to sponsor today? http://www.stackless.com/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/pypy-dev/attachments/20120604/968f8e3b/attachment-0001.html>
More information about the pypy-dev
mailing list