[GOODIE] Namespaces-gk

Alexandre Bergel bergel at iam.unibe.ch
Thu Apr 15 19:52:15 UTC 2004


Hi!

Let's start a discussion from a fresh new thread :-)
I think that Roel asked the right question concerning your goal. And I think that what you have done satisfy one of your requirement regarding name clashes. I like your solution from this perspective. One good point is that Namespaces are transparent to the user.

However, I do not believe that it facilitates the deployment (your third goal). On some point you need to have some meta information related to installation (and perhaps uninstallation, it depends of your goal actually). This means that a package system would still be needed. This is the choice of VisualWorks.

Recently we had some really crazy discussion about deployment of package. And we did not find any simple and easy solution for deploying a system written in a language were namespaces and package are orthogonal.

Cheers,
Alexandre

PS: I did not get what is your second goal. 


On Thu, Apr 15, 2004 at 03:13:15PM +0200, goran.krampe at bluefish.se wrote:
> Hi people!
> 
> Yiha, here comes a first WORKING implementation of "the little proposal"
> on Namespaces! It is fresh out of the debugger, with wrinkles and all.
> Play around with it and discuss it. Tested in latest 3.7beta, not tested
> in *anything else*.
> 
> And you say - Ok, but haven't followed the thread, what the heck is this
> crap?
> 
> It allows you to create classes with what I call "qualified names" like
> this:
> 
> 	MyNameSpace::MyClass
> 
> That is pretty much it. :) It is only one level deep, the namespaces
> have no inter-relationships (no inheritance or anything) and there are
> NO IMPORTS.
> 
> You just create your classes with qualified names and then code just
> like before - using *either* the qualified names or the unqualified -
> the tools will help you when there is doubt.
> 
> And there is nothing stopping you from installing this and still just go
> on like before using unqualified names!
> 
> IMHO it is pretty damn hard to make it any simpler than this.
> 
> regards, Göran
> 
> from preamble:
> 
> "Change Set:		Namespaces-gk
> Date:			15 April 2004
> Author:			Göran Krampe
> 
> This is the first working implementation of the 'little namespace
> proposal' I have posted about. It contains a bunch of base modifications
> and two new classes in category Namespaces. They have class comments. :)
> 
> The code can be made a bit more succinct - it has gone through a few
> hoops along the way.
> 
> Play with it, check out the feel. I have not yet implemented shyness
> btw.
> 
> AFAIK this is the simplest and most backwards compatible way of
> introducing namespaces.
> 
> Known issues:
> - Namespaces are automatically created for you but not removed when
> empty. Just use Smalltalk removeKey: #MySpace
> 
> - I have of course not gone through all the tools, but the browser seems
> to work as it should including rename/delete/copy class."!


> 


-- 
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel  http://www.iam.unibe.ch/~bergel
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.



More information about the Squeak-dev mailing list