Feb. 20, 2005
1:08 a.m.
This is something I've typed way too many times:
Py> class C(): File "<stdin>", line 1 class C(): ^ SyntaxError: invalid syntax
It's the asymmetry with functions that gets to me - defining a function with no arguments still requires parentheses in the definition statement, but defining a class with no bases requires the parentheses to be omitted.
It's fine to fix this in 2.5. I guess I can add this to my list of early oopsies -- although to the very bottom. :-) It's *not* fine to make C() mean C(object). (We already have enough other ways to declaring new-style classes.) -- --Guido van Rossum (home page: http://www.python.org/~guido/)