IDEA for super (Re: [Python-Dev] Classes and Metaclasses in Smalltalk) (original) (raw)

Peter Funk pf@artcom-gmbh.de
Thu, 3 May 2001 08:29:03 +0200 (MEST)


Hi,

Greg Ewing: [...]

How about spelling super(self, MyBaseClass) as

MyBaseClass[self] This can be thought of as a sort of "cast" which turns self into an object which behaves like it were an instance of MyBaseClass. Then we can write MyBaseClass[self].foo(args) Advantages: * Concise and uncluttered * No new syntax needed * Can be implemented using existing mechanisms * Doesn't even remotely resemble anything in C++ :-)

Disadvantages:

We have to face it: I myself don't like C++ either, but a lot of people today are already familar with C++ today. Giving them something they are already familar with, will make it easier to convert some of them to Python.

To Greg: This '::' operator is not at all that ugly and AFAI can see would not introduce any backward incompatible change to the language. I'm sure C++ has some other real warts to offer that we both don't want to see in a future version of Python. Right?

Regards, Peter

Peter Funk, Oldenburger Str.86, D-27777 Ganderkesee, Germany, Fax:+49 4222950260 office: +49 421 20419-0 (ArtCom GmbH, Grazer Str.8, D-28359 Bremen, Germany)