[Edu-sig] Version 0.2.03 of PataPata released (adds Jython/Swing support)
kirby urner
kirby.urner at gmail.com
Thu Aug 10 20:23:15 CEST 2006
On 8/10/06, Arthur <ajsiegel at optonline.net> wrote:
> Is Python really a clear implementation of a simple paradigm? I assume
> you are meaning OO. Or if that is not is what you are saying here, it
> is what I keeping here you say, nonetheless.
Yeah, that's pretty much what I mean. People tell me it's really
"hybrid" because of the top-level functions, but they're just another
type of callable in my book, responsive to dot-notation, which is the
unifying theme.
To claim Java is a purer implementation, because you can *only* define
new functionality in terms of classes, is to fight the idea of a
primitive type system wherein the kinds of primitive objects you'll
get (e.g. functions, generators, iterables) have already been
specified for you, in terms of common interfaces or APIs.
Saying "everything is an object" is a conceptual move, a frame of
mind. Python goes a long way to capture that in syntax, but really,
it's a way of thinking. I find Python programmers tend to think that
way pretty purely. However I'm not saying *only* Python programmers
do that, or that OO is the only way to think effectively.
> That, it seems to me, is a box you are placing it in - your own OO
> dogma - and in fact relates back to our differeing views - at least at
> one point - about the purpose of properties. You seemed to me to have
> seen properties as Python retracing a step that it had missed in
> implementing OO orthodoxy, and I saw it as Python being Python, going
> its merry way, being unconcerned about OO orthodoxy, and it was exactly
> in placing properties in this OO box that you were misintepreting them,
> and as an educator, miseducating about them.
You fairly accurately depict how I see it (Python fulfilling more
expectations judging from the standpoint of some OO canon).
You also brought up a lot of useful DP-talk about the principle of
unified access or whatever they call it, i.e. taking it off the user
to worry about whether it's an attribute (storage) or computation
(more on the fly and "just in time"), as the syntax will tend to *not*
force your consciousness in this direction.
Python already had __getattr__, but the property function helped fill
in a missing feature, yes, as did staticmethod and classmethod.
> When I began to study Lisp a bit, I found myself quite comfortable in
> drawing from my Python background.
>
> Didn't Ian Bicking say here recently that he does not see OO as central
> to how he understands and uses Python? Or was I misinterpreting?
Dunno. Maybe he'll have time to swing through with an update.
> It continues to seem to me that as much as you are an advocate for
> Python, you see it through a filter of your own experience and
> background and expectations that makes it less than what it is. Which is
> maybe why it is more clear to you than to me. Placed in a nice regular
> ployhedra Python is soothing to you.
Yes, it solves a lot of problems. I needed a simple OO
implementation, complete with shell, that wasn't expensive, and that
would give people access to powerful engines and tools.
I also regard OO as a more evolved, or as evolved, as what Princeton
pushes as Logic in its Department of Philosophy. Out of allegiance to
Russell/Whitehead and other Oxbridge proteges, the Ivory Tower disses
practical in-the-field logical languages as impure, too messy, even
when the paradigm is pretty darned clear, even when philosophers such
as Leibniz already got it that we were aiming for machine-level
implementation.
Basically, I think computer scientists earn a more honest living than
most academician philosophers, and use Wittgenstein as a bridge, to
try sharing the workload a little more fairly.
Put another way, I'm fighting academic logicians and their undeserved
superiority complex, when it comes to what's "pure" (e.g. "math is too
pure to sully with actual programming, yech" -- I find such rhetoric
dismaying and feel sorry for the kids they use it on).
This attitude relates disagreements on what's at the foundations of
mathematics. They say by the cathedral (Ivory Tower logic controlled
by a few), I say by the bazaar (ordinary people -- open source is not
new).
> Having less experience, background and expectations and leaving in a
> irregular, non-metric world of projective geometry perhaps there is
> something to my feeling that I see Python as it is more clearly than do you.
>
> Art
>
I'm willing to admit that in my hands, in my curriculum, Python takes
on a definite shape and color that it might not in another curriculum.
I simplify, dismiss, emphasize this detail, de-emphasize that.
That's just my prerogative as a teacher. Others teach differently and
I enjoy sampling the contrasts, drawing attention to them as positives
even.
I guess what makes me a liberal arts humanities type is our glorious
diversity was never a big problem for me. I sense it's not a big
problem for you, either.
Kirby
More information about the Edu-sig
mailing list