[Zope3-dev] Package is the wrong name for the things I called "Zope Packages".

seb bacon seb@jamkit.com
Tue, 21 Jan 2003 12:27:41 +0000


I still like "bundle", probably with modifiers.

A quick thought:

We want TTW programming to be intermediate between site configuration 
tasks (no scary code) and python programming (mainly code).

TTW development should be appealing to newbies without having scary 
jargon that makes the newbies think it's too techie for them.

I wonder if the word 'persistent' is a scary word.  Imagine you come to 
the world of programming through Zope.  What is a persistent module? 
One which just won't give up?

It would be nice to choose labels which immediately mean something to 
newbies.  I know
I was going to suggest a "Zope module" and a "Zope Package"



Jim Fulton wrote:
> 
> I picked the wrong name for the things currently called
> 
> 
> Let me summarize the current terminology:
> 
> - Python packages
> 

> - Python modules
> 
>   Normally, we mean collections of code implemented by ".py"
>   files. Like packages, they contain bits (code) and provide a
>   namespace.
> 
> - Persistent modules
> 
>   These are objects, stored in the ZODB that are meant to be as much
>   like normal Python modules as possible. Thet contain a bit string of
>   text that represents Python source code. They also provide a namespace.
> 
>   They do have slighly different semantics to support run-time update.
> 
> - Persistent packages
> 
>   These are objects, corresponding to Python packages, that are stored
>   in the object database. Unlike normal Python packages, they *only* 
> provide
>   a namespace. They do not include bits.
> 
>   For example, when you define a persistent module with the name "x.y.z",
>   you are also defining a persistent package "x.y".  If you define another
>   module named "z.y.q", then you are defining "q" as another name in the 
> "x.y"
>   package.
> 
> - Zope Packages
> 
>   These are objects (currently) contained in a "Packages" container 
> object in
>   service managers. These are used to contain bits and registratiuon 
> information.
>   They do not provide much in the way of namespaces.
> 
>   Zope packages are used for three things:
> 
>   A. Provide a workspace for local configuration.
> 
>   B. Provide a mechanism for creating software distributions.
> 
>   C. Provide a mechanism for installing software distributions.
> 
>   Note that it will not be uncommon to create a zope package as a local
>   configuration workspace and decide you want to give it to somebody.  
> As a result,
>   I think that the same name and object should be used for first two 
> uses, A and B,
>   above.  Maybe the third, C, use deserves a different name and kind of 
> object.
> 
>   I'll also note that the is a strong correspondence between these things
>   and folders in content space.
> 
> So where does that leave us?
> 
> I'm pretty sure that the things currently called Zope packages should be
> called something else.
> 
> I suspect that the things currently called "closed Zope packages" (use C)
> should have an entirely different name from the things currently called
> "open zope packages" (uses A and B). I'm inclined to think that the name
> for uses A and B should involve the word "folder", although I haven't 
> thought
> of great modifiers.
> 
> Suggestions are welcome. :)
> 
> Jim
> 

-- 

    [] j a m k i t

         seb bacon
T:  020 7549 0520
F:  020 7490 1152
M:  07968 301 336
W: www.jamkit.com