IsString

Donn Cave donn at drizzle.com
Thu Dec 15 02:36:07 EST 2005


Quoth Mike Meyer <mwm at mired.org>:
| Donn Cave <donn at u.washington.edu> writes:
...
|> Historically, the way I remember it, there was a time not too
|> long ago when GvR and his minions sort of dismissed the idea
|> that you needed to understand the reference/object model from
|> the outset.  I mean, obviously you need to get there eventually
|> if you're going to be a hard core Python programmer, but they
|> wanted to see people learning to write programs, without being
|> encumbered by knowledge of implementation details, and ideas
|> about the difference between "variable" and "binding" are
|> certainly about implementation details.
|
| No, they're not. They're a fundamental part of the semantics of the
| language. But you are right - you should be able to learn how to
| program in Python without having to learn about those thing. The fact
| is, you can do that - if you don't have any preconcieved notions about
| what the names are and how they behave. If you have to unlearn things
| from another language (like that variables have types, or values that
| can be changed), then you'll need the difference explained the first
| time the difference is noticable.

Yes, it may be easier to learn from a blank slate, though I wouldn't
be too sure.  But that is kind of beside the point (are you trying to
answer too many messages per day here?)  Either you have to learn it,
or you don't.

Eventually, of course you do have to learn it.  At some point you're
confronted with the need to predict what will happen in one of those
perennial examples like a = [], b = a, a.append(c).  If you can predict
results accurately every time, then whether you learned it by reading
the documentation or by experimentation, whether you learned it in CS
terminology or understand it in some non-verbal way, in any case you
have learned something about the language itself.

The question is whether basically everyone needs to get there, or we
can expect the masses to use the language _without understanding it_
in this sense, without understanding the language-specific stuff.
I don't know how important that is, I guess it depends on how real
the CP4E world is ever going to be, but I think it's wishful thinking
to expect that to work with Python.

	Donn Cave, donn at drizzle.com



More information about the Python-list mailing list