Robert Bradshaw, 25.05.2011 22:52:
On Wed, May 25, 2011 at 1:41 PM, John Ehresman wrote:
On 5/25/11 3:51 PM, Robert Bradshaw wrote:
I'm glad you're thinking about this question, some explanation of the
various string types is at
http://wiki.cython.org/enhancements/stringliterals
Probably the way to do this is have one optimization for bytes, one
for unicode, and then have a third type for str that dispatches to the
one or the other depending on the python version (using #define).
I think this means that the current unicode optimizations aren't used when
variables are declared as str and a python 3 runtime is used. Should all
unicode optimizations support str eventually?
Yes.
Well, minus those that are not portable. For example, the return type of
indexing and iteration is the C type "Py_UCS4" for unicode, but the Python
type "str" (i.e. bytes/unicode) for "str". I also didn't take a thorough
look through the C-API functions for the str type in Py2 and Py3. Things
certainly become more ugly when trying to optimise Python code into C for
both platforms, than when leaving things at the Python type level.
Stefan
_______________________________________________
cython-devel mailing list
cython-devel@python.org
http://mail.python.org/mailman/listinfo/cython-devel