[Python-Dev] PEP 393 Summer of Code Project (original) (raw)

"Martin v. Löwis" martin at v.loewis.de
Tue Aug 23 18:12:32 CEST 2011


Even with tagged pointers, you could just provide a macro that unpacks the pointer to the buffer for a given string kind.

These macros are indeed available.

I don't think there's much more to be done to keep up the abstraction. I don't see a reason to prevent users from accessing the memory buffer directly, especially not by (accidental, as I understand it) obfuscation through a void*.

It's not about preventing them from accessing the representation. It's an "internal public" structure just as all other object layouts (i.e. feel free to use them, but expect them to change with the next release).

However, I still think that people rarely will:

That said, I can readily believe that Cython would have a use for direct access to the structure. I just wouldn't want people to rewrite their code in four versions (three for the different 3.3 representations, plus one for 3.2 and earlier).

Regards, Martin



More information about the Python-Dev mailing list