Author ncoghlan
Recipients Suzumizaki, amaury.forgeotdarc, brett.cannon, eric.snow, ncoghlan, serhiy.storchaka, vstinner
Date 2014-02-04.11:50:49
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1391514649.53.0.964110210008.issue20485@psf.upfronthosting.co.za>
In-reply-to
Content
import-sig@python.org would be the appropriate list for this one. 

However, we can't do anything about it until Python 3.5 next year at the earliest, and I'm already planning to write a follow-up to http://www.python.org/dev/peps/pep-0451/ that adapts the extension module import mechanism to support those APIs (addressing a number of longstanding feature requests from the Cython developers).

That said, this is an independent proposal, so if you were willing to write it up as a separate PEP, that would be probably be a good idea. Our two choices to consider would be:

1. Using a custom 7-bit ASCII compatible encoding to support this on arbitrary C compilers (at the cost of making the identifiers unintuitive). (i.e. the approach in your patch)

2. Using the "Universal Character Name" support originally specified in C99, but retained in C11 (these are the \Uxxxxxxxx and \uxxxx escapes familiar from Python text literals). Note that *CPython* still won't need to be compiled with a compiler that supports UCN for this to work - we'll just need the dynamic linking API to support us looking for a symbol containing such a name.

Option 2 is what I think we *should* do, but there will be some research involved in figuring out how good the current support for UCN C identifiers is in at least gcc, clang and Visual Studio 2013, as well as what the dynamic linker APIs support in terms of passing identifiers containing Unicode escapes to be looked up in the exported symbols.
History
Date User Action Args
2014-02-04 11:50:49ncoghlansetrecipients: + ncoghlan, brett.cannon, amaury.forgeotdarc, vstinner, Suzumizaki, eric.snow, serhiy.storchaka
2014-02-04 11:50:49ncoghlansetmessageid: <1391514649.53.0.964110210008.issue20485@psf.upfronthosting.co.za>
2014-02-04 11:50:49ncoghlanlinkissue20485 messages
2014-02-04 11:50:49ncoghlancreate