python improvements (Was: Re: New Language)
Martijn Faassen
m.faassen at vet.uu.nl
Tue May 16 06:28:07 EDT 2000
More information about the Python-list mailing list
Tue May 16 06:28:07 EDT 2000
- Previous message (by thread): python improvements (Was: Re: New Language)
- Next message (by thread): python improvements (Was: Re: New Language)
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Bernhard Herzog <herzog at online.de> wrote: > m.faassen at vet.uu.nl (Martijn Faassen) writes: >> Russell E. Owen <owen at astronojnk.washington.edu.invalid> wrote: >> [snip] >> > - class methods (e.g. ClassName.doSomething(...)). Often useful where >> > global functions might otherwise be wanted. By requiring the class name >> > one gets namespace protection and categorizes the function as relevant >> > to objects of the given class. >> >> Hm, how would this provide you with more namespace protection than the >> current module system? By being in the same module, a function also >> gets categorized as relevant to objects of the classes defined in the >> module, too.. > I used to think this too, but recently I actually had a situation where > class methods would have been useful. I had a list of classes, so the > classes were effectively anonymous and I didn't know where each class > came from, yet I wanted to get some class specific information that I > wanted to compute at that time and not at class creation time (when the > class statement is executed). Right, that's a good point. > I couldn't just instantiate the classes to get at real methods because > the constructors required some arguments I couldn't supply at that time > and while it's possible to get at the module the class was defined in[1] > but I didn't want to rely on that. You could give each class a list of associated module level functions, I suppose, though? > In that situation, real class methods would have been useful and cleaner > than any other solution. In the end, I fell back to normal class > attributes that are computed at class definition time because it works > well enough for the time being. Right, I'd agree class methods would be a cleaner solution here. I don't think that other potential solutions are that much worse, though. But you're right, this is an example of when they'd be convenient. Regards, Martijn -- History of the 20th Century: WW1, WW2, WW3? No, WWW -- Could we be going in the right direction?
- Previous message (by thread): python improvements (Was: Re: New Language)
- Next message (by thread): python improvements (Was: Re: New Language)
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Python-list mailing list