[python] Metody korenoveho objektu

Radek Kanovsky rk na dat.cz
Úterý Duben 1 16:57:49 CEST 2003


On Tue, Apr 01, 2003 at 04:06:40PM +0200, Ondrej Nekola wrote:

> > nechapu, proc ma mit treba instance float(2.2) metodu afterDelay().
> 
> Imho neni duvod, proc by nemohl mit tyto metody kazdy objekt, prestoze cast z 
> nich je neuzije.

Nejsem Arafat, ale stejne mne to prijde proti zasadam OOP.

> > def inst_list (cls) :
> >     return filter(lambda x: isinstance(x, cls), gc.get_referrers(cls))
> 
> Tudy, obavam se, cesta nevede. Mozna reseni, ktera me napadaji
> 1) zmenit primo definici objectu, zde nevim, zda k tomu nebudu potrebovat 
> hrabat se v C.
> 2) pri startu programu rozsirit protkol objectu. Pak by, predpokladam, mely 
> vsechny loadovane tridy mit prislusne rozsireny interface.

Urcite by bylo potreba vlezt do zdrojaku pythonu a upravit
object a mozna type. Pokud byste ovsem netrval na syntaxi
obj.hmo1.hmo2.hmo3.meth() a spokojil se s hmo3(hmo2(hmo1(obj.meth))),
tak by to snad slo i bez toho. Otazkou je efektivita toho celeho.

Zdravi

Radek Kaňovský


Další informace o konferenci Python