On Sun, Apr 19, 2015 at 12:10 AM, Chris Angelico <rosuav@gmail.com> wrote:
That's not true; there is a spec for the language, which is
independent of CPython, PyPy, etc, which are the implementations of
it.

​I'm not aware of such a document - can you point me to it? AFAIK `callable` is too old to be in a PEP.​ I hope you didn't have in mind the "docs as specification", that's not really a specification, it's a "state of things".

But in this case, the question isn't one of Python vs CPython, but one
of the use of application-level code. If this is considered a hack,
then it's not part of the language spec at all, but if it's deemed a
feature, then (a) every Python implementation will be required to
match it, and (b) other parts of the language (in this case,
callable()) will probably be required to acknowledge it.

I wouldn't care about other python implementations, they are years behind CPython, and this is a very small change anyway. Why would this matter for them if they still implement python-2.7-language? It doesn't really make sense, unless you are considering to fix this in 2.7 too.



Thanks,
-- Ionel
Cristian Mărieș, http://blog.ionelmc.ro