[Python-3000] PyUnicodeObject implementation

Guido van Rossum guido at python.org
Sat Sep 6 04:25:41 CEST 2008


This is an excellent idea that fell by the wayside. Since it is a
major coding project there's no way it can be done for 3.0 -- the risk
of introducing new instabilities or leaks is just too high. We *might*
be able to get it in for 3.0.1, if the code is reviewed really well.
Though it might be safer to aim for 3.1.

On Fri, Sep 5, 2008 at 6:54 PM, Jeremy Kloth <jeremy.kloth at gmail.com> wrote:
> I don't know if this is too late to do before the final release, but shouldn't
> the implementation of PyUnicodeObject be updated to match the much more
> efficient old PyStringObject layout?  I mean eliminating the double malloc
> that is currently required for each unicode string.
>
> PyStringObject is declared as a PyVarObject allocated in one chunk, whereas
> the current PyUnicodeObject is a PyObject allocated in two chunks, one for
> the object and one for the Py_UNICODE data.
>
> I think that this change would go a long way towads making unicode strings
> comparable to old (2.x) string speeds. I can see that if not changed now,
> there would be 3rd party extensions that would be relying on the particular
> layout of PyUnicodeObject and therefore making changing it later too risky.
>
> If there is interest in this change, I would happily write a patch that make
> this change.
>
> Thanks,
> Jeremy
>
> --
> Jeremy Kloth
> http://4suite.org/
> _______________________________________________
> Python-3000 mailing list
> Python-3000 at python.org
> http://mail.python.org/mailman/listinfo/python-3000
> Unsubscribe: http://mail.python.org/mailman/options/python-3000/guido%40python.org
>



-- 
--Guido van Rossum (home page: http://www.python.org/~guido/)


More information about the Python-3000 mailing list