On 8/10/06, Arthur <[EMAIL PROTECTED]> 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 _______________________________________________ Edu-sig mailing list [email protected] http://mail.python.org/mailman/listinfo/edu-sig
