[Python-Dev] Tutorial: Brief Introduction to the Standard Libary

Michael Hudson mwh at python.net
Wed Dec 3 07:40:05 EST 2003

I don't want to be rude -- is English your first language? -- but I
found this article to be written in particularly baroque prose.  I'm
not quite sure what your central point is.

Arthur <ajsiegel at optonline.net> writes:

> No mention of the copy module.  Is this open for discussion?

Well, I dunno.  If it was my decision, there's no way it would be
mentioned in the builtins.

> OTOH, functionally, haven't some built-ins been growing copy methods? Could
> be wrong about that - seem to get that idea somewhere.

No changes here in a long while.

> Is it unreasonable to argue that hiding - isn't that is what is being
> advocated, in essence - something that is arguably conceptually important,
> cannot properly be considered to be a service to beginners?

I don't think it's unreasonable at all.  To me the copy module is
something you only need when you really need it, then you go looking
for it.

> Is it totally out-of-left field to argue that confronting "copy" forces a
> confrontation with the fundamentals of assignment - perhaps the most subtle
> concept faced in approaching Python.

Certainly, the failure to understand assignment and erroneous beliefs
that the copy module is necessary in a given situation go hand in hand.

Assignment in Python *isn't* particularly subtle, though.  My
impression is that it's people from e.g. C who get tripped up here,
not total newbies.

> Particularly difficult because the beginner does not know to expect
> subtleties.  I would argue that these subtleties are *always*
> surprising - particularly and importantly because of an important
> missing clue.  That clue, specifically, the existence of copy.
> I had always assumed that the absence of copy()/deepcopy() from built-ins
> was for 'big boy' reasons.

Another reason might just be that copy() is implemented in Python...

> And accepted it as that - feeling, in general, that the big boy
> issues should override the 'good for beginners' issue.  And only
> take up the cause of copy() to the extent that - on better evidence
> - it appears to be being handled as it is for paternalistic
> reasons. I am closer to being a beginner than most.

Have you ever used the copy module?  I am *not* a beginner, and have
used it *once* (and I can't remember what for, either).


  y'rs - tim
              -- Tim Peters dishes out versioning advice on python-dev

More information about the Python-Dev mailing list