Python 3 consistency proposal
tjreedy at udel.edu
Wed Mar 25 02:20:54 CET 2009
> On Mar 25, 1:23 am, Steven D'Aprano
> <ste... at REMOVE.THIS.cybersource.com.au> wrote:
>> On Tue, 24 Mar 2009 16:45:26 -0700, gert wrote:
>>> Rename all built in classes with a capital letter example Str() Int()
>>> Make () optional for a function definition class Test:
>>> def test:
>>> Any chance Guido would approve this :-)
>> Unless you're volunteering to produce a patch, the chances are zero.
No. He just made clear today that he values stability over
non-functional consistency changes -- especially now that 3.0 is out.
>> If you *are* willing to do the work, the chances would still be pretty
>> slim. Guido has just rejected a patch adding PEP 8 compliant aliases for
>> types like datetime, so I think replacing built-ins have all-but zero
>> chance. But if you want to pursue it, the right place is the python-ideas
>> mailing list. Go for it ... but be prepared to justify the change, and
>> not just "for consistency". As Guido has quoted before, "A foolish
>> consistency is the hobgoblin of little minds".
> Its only foolish because it breaks everything, but it would not be
> foolish on a syntax level.
> Not that I can't live without, but I am just wondering why they did
> not do this in the first place?
As I remember, int, str, etc, once *were* functions (or at best types)
rather than callable class objects. Before 2.2, built-in types and
user-defined classes were separate categories of entities.
More information about the Python-list