Re: Ten Essential Development Practices
- From: Robert Kern <rkern@xxxxxxxx>
- Date: Thu, 28 Jul 2005 15:35:54 -0700
Michael Hoffman wrote:
Aahz wrote:
One of these days I'm going to figure out how to embody "Namespaces are one honking great idea -- let's do more of those!" Then I shall be enlightened.
What don't you understand about it? (This is a serious question -- I can think of several answers to give you, but want to know what focus is needed first.)
I wasn't expecting a serious answer to this, but here goes.
First, I wasn't a Python user when namespaces were introduced. It's hard for me to even imagine Python without namespaces. Did imported modules just go into the same namespace as everything else? Yuck. It's too bad this happened before there were PEPs so I could understand the design and what came before.
I'm pretty sure that namespaces are fundamental to the design of Python. I don't think there was any "before namespaces."
Is it the fact that Python is unimaginable without namespaces that makes them such a honking great idea? Aren't they somewhat of an obvious idea? Several other languages have them.
Was the implementation of namespaces easy or hard to explain?
It isn't just that Python has namespaces, but that they are the implementation for quite a lot of things. Modules: namespaces. Classes: namespaces. Instances: namespaces. Scope: namespaces. It's a very elegant way to handle a broad class of language features very consistently.
That said, I made a boo-boo. The Zen of Python is really a set of design principles (and some of them, like this one, are more specifically *language* design principles), not Essential Development Practices. That'll teach me to not RTFA.
-- Robert Kern rkern@xxxxxxxx
"In the fields of hell where the grass grows high Are the graves of dreams allowed to die." -- Richard Harter
.
- Follow-Ups:
- Re: Ten Essential Development Practices
- From: Dan Sommers
- Re: Ten Essential Development Practices
- References:
- Ten Essential Development Practices
- From: gyromagnetic
- Re: Ten Essential Development Practices
- From: Robert Kern
- Re: Ten Essential Development Practices
- From: Michael Hoffman
- Re: Ten Essential Development Practices
- From: Aahz
- Re: Ten Essential Development Practices
- From: Michael Hoffman
- Ten Essential Development Practices
- Prev by Date: Re: Cgi scripts in apache not working
- Next by Date: c/c++ extensions and help()
- Previous by thread: Re: Ten Essential Development Practices
- Next by thread: Re: Ten Essential Development Practices
- Index(es):
Relevant Pages
|