Lawrence D'Oliveiro wrote: > In message <[EMAIL PROTECTED]>, Ben Finney wrote: > >> Lawrence D'Oliveiro <[EMAIL PROTECTED]> writes: >> >>> On my Gentoo system: >>> >>> >>> import os >>> >>> os.path >>> <module 'posixpath' from '/usr/lib64/python2.5/posixpath.pyc'> >>> >>> It's just a variable that happens to point to the posixpath module. >> There's no "pointing" going on. It's another name bound to the same >> object, of equal status to the 'posixpath' name. >> >> Python doesn't have pointers, and even "variable" is a misleading term >> in Python. Best to stick to "name" and "bound to". > > In Python, all names _are_ variables. They are not "bound" to objects. The > value of os.path is a pointer. It's implemented as a pointer, it has all > the semantics of a pointer. > > Honestly, why do people react to the word "pointer" as though computers have > to wear underwear to conceal something shameful going on in their nether > regions?
Because they have been told by their church that all God-fearing names do what names have always done in programming languages, which is to describe areas of memory of a particular size, type and locality. You and I know that the semantics of Python names are precisely those of (to use an Algol 68 term, unless I am mistaken) automatically dereferenced pointers to objects of arbitrary type. I actually think that's one of the neatest things about Python, and I believe it's no accident that both Tim Peters and I were Icon enthusiasts. But the rest of the world clings to its illusions. regards Steve -- Steve Holden +1 571 484 6266 +1 800 494 3119 Holden Web LLC/Ltd http://www.holdenweb.com Skype: holdenweb http://del.icio.us/steve.holden Sorry, the dog ate my .sigline -- http://mail.python.org/mailman/listinfo/python-list