On 2 May 2013 16:56, Frank Shearar <frank.shea...@gmail.com> wrote: > On 2 May 2013 15:37, Ben Coman <b...@openinworld.com> wrote: >> Sven Van Caekenberghe wrote: >>> >>> On 02 May 2013, at 06:03, Igor Stasenko <siguc...@gmail.com> wrote: >>> >>> >>>> >>>> Hi, all >>>> >>>> do not think that i am drunk or vent crazy, asking such silly >>>> question, which at best should be asked only by beginner :) >>>> >>>> I know the answer: >>>> >>>> Smalltalk at: #SomeName >>>> >>>> or >>>> >>>> Smalltalk globals at: #SomeName >>>> >>>> what stroke me, just now, that both answers is wrong! >>>> >>>> It should be: >>>> >>>> #SomeName asGlobal >>>> >>>> (or suggest more appropriate/precise method name for a symbol) >>>> >>> >>> >>> ConfigurationOfXYZ globalValue project bleedingEdge load. >>> >>> ConfigurationOfXYZ globalValueIfPresent: [ :configuration | configuration >>> project bleedingEdge load ] >>> >>> An alternative could be globalBinding, but that is more technical. >>> >>> #asGlobal sounds like a conversion, on the other hand it is an accepted >>> idiom. >>> >> >> >> #asGlobal feels confusing to me. It doesn't sound like a lookup. Some >> other alternatives: >> >> #SomeName fromGlobal >> #SomeName from: someOtherEnvironment >> >> #SomeName fromEnvironment "the current one" >> #SomeName fromEnvironment: someOtherEnvironment >> >> #SomeName fromEnv: someOtherEnvironment >> #SomeName fromEnv "the current one" >> >> >> but why bother at all. What is the advantage over this: >> >> Smalltalk at: #xx put: 1. >> xx inspect. > > But the use case here is when you want to reference a class that has > not yet been loaded, which happens every time you run a load script > for a ConfigurationOf. > yes, so you write:
#ConfigurationOfXYZ asClass load. instead of: (Smalltalk at: #ConfigurationOfXYZ) load. > frank -- Best regards, Igor Stasenko.