[Python-Dev] Object customization (was: Arbitrary attributes on funcs and methods)

Greg Stein gstein@lyra.org
Fri, 14 Apr 2000 15:01:51 -0700 (PDT)


On Fri, 14 Apr 2000, Vladimir Marangozov wrote:
> Gordon McMillan wrote:
> > 
> > Ah. I see. Quite simply, you're arguing from First Principles
> 
> Exactly.
> 
> I think that these principles play an important role in the area
> of computer programming, because they put the markers in the
> evolution of our thoughts when we're trying to transcript the
> real world through formal computer terms. No kidding :-)
> So we need to put some limits before loosing completely these
> driving markers. No kidding.

In YOUR opinion.

In MY opinion, they're bunk. Python provides me with the capabilities that
I want: objects when I need them, and procedural flow when that is
appropriate. It avoids obstacles and gives me freedom of expression and
ways to rapidly develop code. I don't have to worry about proper
organization unless and until I need it.

Formalisms be damned. I want something that works for ME. Give me code,
make it work, and get out of my way. That's what Python is good for. I
could care less about "proper programming principles". Pragmatism. That's
what I seek.

>...
> > I used to, but I found that all systems built from First Principles
> > (Eiffel, Booch's methodology...) yielded 3 headed monsters.
> 
> Yes. This is the state Python tends to reach, btw. I'd like to avoid
> this madness.

Does not. There are many cases where huge systems have been built using
Python, built well, and are quite successful.

And yes, there have also been giant, monster-sized Bad Python Programs out
there, too. But that can be done in ANY language. Python doesn't *tend*
towards that at all. Certainly, Perl does, but we aren't talking about
that (until now :-)

> Put simply, if we loose the meaning of the notion of a class of objects,
> there's no need to have a 'class' keyword, because it would do more harm
> than good.

Huh? What the heck do you mean by this?

>...
> > not as a flaw in the object model. 
> 
> if we still pretend there is one... 

It *DOES* have one. To argue there isn't one is simply insane and
argumentative.

Python just doesn't have YOUR object model. Live with it.

Cheers,
-g

-- 
Greg Stein, http://www.lyra.org/