[squeak-dev] Re: Towards clean unloading Morphic (an idea)

Nicolas Cellier nicolas.cellier.aka.nice at gmail.com
Fri May 21 10:00:15 UTC 2010


The question is what you want Namespace for?

For having private classes vs public classes?
For reducing global name clashes?
For compiling/evaluating code in different environments (security?)
This latest subject also is related to dynamically looked up globals.

It also is related to the discussion from Gilad about files considered
evil : if we are forced to give a full path for each class, then it's
a little like we reintroduced something like a file system (thank you
very much Tobias for making this obvious thru the / notation).

Nicolas

2010/5/21 Igor Stasenko <siguctua at gmail.com>:
> On 21 May 2010 12:17, Denis Kudriashov <dionisiydk at gmail.com> wrote:
>> I think It's very good if Squeak namespaces will be compatiple with
>> VisualWorks (it use dot).
>
> dot is ambiguous.
> { A.B.C.D. }
>
> P.S. guys can be get back to topic?
> i am almost 99% sure that just yet another namespaces discussion won't
> brings us any closer to practical solution
>
>>
>> 2010/5/21 Göran Krampe <goran at krampe.se>
>>>
>>> On 05/21/2010 09:23 AM, Tobias Pape wrote:
>>>>
>>>> Am 2010-05-21 um 08:44 schrieb Torsten Bergmann:
>>>>
>>>>>> And I think period is bad, it blends too much with sequencing, I
>>>>>> personally think double colon looks the best and stands out. And is
>>>>>> used
>>>>>> in both C++ and Perl AFAIK
>>>>>
>>>>> Double colon is also used in Smalltalk MT for Namespaces.
>>>>
>>>>
>>>> … what about a slash?
>>>> +       makes for a good binary message
>>>>                NameSpaceA / SubspaceB / ClassC
>>>> +       Looks like a Path
>>>> -       May interfere with division
>>>
>>> If you start using syntax that includes "space" then you will get into
>>> syntactic problems. It clashes with message sending, but on the other hand,
>>> if you are indeed looking for *dynamic* namespaces then that is what you
>>> want. But then, as Dan Ingalls suggested, you wouldn't need any slash at
>>> all, it would just be:
>>>
>>> NameSpaceA SubspaceB ClassC
>>>
>>> ...now, my Namespace solution is *not* dynamic, so it is not message
>>> sending. It simply allows having the character $: in a Symbol and thus also
>>> in a global reference. And oh, my proposal was *not* hierarchical but a flat
>>> list - but it could be made hierarchical if needed, I just didn't feel the
>>> need. So:
>>>
>>> NameSpaceA::ClassC
>>>
>>> ...in my solution is just a global reference.
>>>
>>> regards, Göran
>>>
>>
>>
>>
>>
>>
>
>
>
> --
> Best regards,
> Igor Stasenko AKA sig.
>
>



More information about the Squeak-dev mailing list