On Fri, Feb 1, 2013 at 5:11 AM, Ned Batchelder firstname.lastname@example.org wrote:
I think parens for super class are an unfortunate syntax, since it looks just like arguments to the class and is confusing for some beginners:
def function(arg): ... function(10) # Similar syntax: 10 corresponds to arg class Thing(Something): ... thing = Thing(10) # How does 10 relate to Something? It doesn't.
A better syntax (which I AM NOT PROPOSING) would be:
class Thing from Something:
class Thing = Something: pass
I am not proposing this either, but it would emphasize the difference between superclasses and __init__ args.
But really, parens are used in many different ways. There doesn't need to be a logical parallel between generator expressions and function calls, for instance.