SmalltalkImage current

Gary Chambers gazzaguru2 at btinternet.com
Tue Jul 3 14:23:07 UTC 2007


Seems like the idea of "Global Variables" has got a bad name from misuse in
other languages. Remember, Smalltalk is an Environment. Globals are
good/necessary when appropriate!

-----Original Message-----
From: squeak-dev-bounces at lists.squeakfoundation.org
[mailto:squeak-dev-bounces at lists.squeakfoundation.org] On Behalf Of sig
Sent: 03 July 2007 11:39 am
To: The general-purpose Squeak developers list
Subject: Re: SmalltalkImage current


On 03/07/07, Craig Latta <craig at netjam.org> wrote:
>
> Hi all--
>
>      I'd just like to remind everyone again of my design for shared 
> variables from July of last year[1], implemented in Spoon at that 
> time. I removed SystemDictionary; each class is responsible for its 
> own name literal (so each one appears in only one place, instead of 
> the two we had before). Each class name literal (an association 
> between a symbol and a class object) is unique, so the name symbols 
> need not be. Humans can distinguish classes from one another without 
> regard to name by other means (e.g., author, version, class 
> categories, object identity), with help from the development tools. 
> Given this support, there is no need for namespaces in the common 
> sense; the name symbol of each class can be anything, so in effect 
> each and every class has its own namespace.
>
>      As for where to put the behavior formerly provided by the 
> SystemDictionary instance, I prefer that it live at (Interpreter 
> class). A normal system will have only that behavior there, a system 
> with the support to actually build an interpreter will have a bunch 
> more (currently provided by the VMMaker package).
>
>      Please see the design for more details.
>

Your solution is good one. And i prefer to see it in future versions of
squeak. But this actually raises a more broader question: what to do with
global variables, which is identified by name? Can system be designed in
such way, that it does not have any global variables (which actually forces
us to introduce a structure like SystemDictionary)?

>
>      thanks,
>
> -C
>
> [1] http://tinyurl.com/yn7f9h (lists.squeakfoundation.org)
>
> --
> Craig Latta
> improvisational musical informaticist
> www.netjam.org
> Smalltalkers do: [:it | All with: Class, (And love: it)]
>
>
>




More information about the Squeak-dev mailing list