Martijn Faassen, 08.12.2011 20:12:
On 12/08/2011 01:54 PM, Stefan Behnel wrote:
So, assuming that Martijn was actually referring to legacy code, I agree
that it won't solve the problem at hand. But that doesn't mean it would
be impossible to benefit from it.

Not sure what you mean here - I was referring to using existing Python 2
code in Python 3 projects, and vice versa.

Sure, and I meant that you'd probably still have to modify (or rather fix) the code in order to make the integration work, if only to make it use proper bytes or unicode strings where data or text is passed into the other environment. The runtime can only provide a default adaptation here, and even if the string type behaviour is completely inherited from the source environment, you could still run into the Py2-UnicodeDecodeError hell on the other side when passing around text in encoded byte strings "because it worked in my local Py2 installation".


The Cython experience is definitely interesting: it's good to know there is
some experience with this problem. My hope is that you can come up with
some sensible rules and fix the rest with a few annotations (in a separate
module informing the rest, or included in the codebase itself) for the
ambiguous cases.

It would definitely require a bit of "six" foo, but most likely less than without the second Python environment because the code only needs bug fixing, not adapting to new (builtin) semantics and syntax.

Stefan

_______________________________________________
pypy-dev mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-dev

Reply via email to