On 13 September 2013 02:06, Camillo Bruni <camillobruni@gmail.com> wrote:
Session is a class, not an instance that is a BIG difference. The same goes for VirtualMachine, OSPlatform, OSEnvironment etc. These are all classes, but you only work with their instances:
OSPlatform current == Smalltalk os VirtualMachine current == Smalltalk vm OSEnvironment current == Smalltalk os environment
and thus, it is quite natural to deduce
Session current == Smalltalk session
it's all symmetric, not strange objects that have names like classes but are actually instances.
That's not the kind of symmetry i would like to see :) It doesn't hurts to have 2 ways to do the same thing (Perl even armed this 'as a good thing' btw), but to my taste there should be only one way, which frees me (as a user) from unnecessary doubts and need to search for vague explanations from system's authors.
On 2013-09-12, at 20:51, Igor Stasenko <siguctua@gmail.com> wrote:
Even more, it feels like we introducing another global (so users can write 'Session current' , but why not just 'Session' then?) and so a step backwards as to me. Because we trying to get rid of all those Display, World, InputSensor , ActiveHande etc globals for years.
And last thing: there should be only one way to get current session object. now there's two: Smalltalk session and Session current
and so, users now will inevitably raise the question: what is the right 'true' API for accessing it? and inevitably we will have two fighting camps, if we leave this thing in image and be used in various projects.
-- Best regards, Igor Stasenko.