[Python-Dev] API bloat

Stefan Behnel stefan_ml at behnel.de
Thu Feb 10 13:51:16 CET 2011


Mark Shannon, 10.02.2011 11:16:
> Of course 743 functions is about 700 too many,

Sorry, but that's so wrong, it's just being mean.

What do you expect from a platform that has grown for more than 20 years? 
And which has been the only (real) Python implementation for most of that time.

I'm sure it'll be easy to find, say, 200 functions that are not really 
required (PySequence_Fast?), but many of those make the life easier for C 
programmers and/or have helped with portability in the past. Most of those 
"C helper functions" long predate the dedicated extension writer tools that 
bring relieve from calling them. Mind you, even the Cython project is only 
some 4 years old, and even there you will still want to call a C-API 
function or two from time to time.

Seriously, CPython's C-API has always been a *reason* for it to be popular. 
Many important tools wouldn't even exist without it, and sure wouldn't be 
in their current state if the C-API had not evolved together with them. 
Just think of NumPy, which is one (if not *the* one) of the main attractors 
for other Python implementations to get their view of the C-API implemented.

Stefan




More information about the Python-Dev mailing list