[squeak-dev] Re: Smalltalk vs SmalltalkImage current woes

David T. Lewis lewis at mail.msen.com
Sat Jul 25 14:38:23 UTC 2009


On Fri, Jul 24, 2009 at 02:07:20PM -0300, Juan Vuletich wrote:
> Andreas Raab wrote:
> >Igor Stasenko wrote:
> >>I am currently using the Cuis, which doesn't having a 'SmalltalkImage
> >>current' refactoring..
> >
> >Ah, one of my favorite rant subjects. First, it's not a refactoring; 
> >refactorings leave the public interfaces intact (I really hate it when 
> >people call random rewrites "refactoring" code). Secondly I'm still 
> >100% behind what I wrote here about Smalltalk vs. "SamlltalkImage 
> >current":
> >
> >http://lists.squeakfoundation.org/pipermail/squeak-dev/2007-June/118175.html 
> >
> >
> >I'm very glad to hear that Cuis doesn't use SmalltalkImage.
> 
> I totally agree with Andreas.
> 
> >>Now, Smalltalk == SmalltalkImage current and everyone is happy:
> >> - dictionary lives in separate ivar,
> >> - fat & boring housekeeping stuff lives in SmalltalkImage instance.
> >>
> >>What you think?
> >
> >I think it's a definitive improvement to the current situation.
> 
> The compatibility trick I suggest for Cuis is really easy. Just add 
> SmalltalkImage as a new, empty class, with just one class method 
> 'current ^Smalltalk'. Simple, clean, and compatible with both original 
> and 'SmalltalkImage current' idiom.

This sounds like a good way to handle it. There are some external packages
that need to use the "SmalltalkImage current" idiom when loaded into one
version of Squeak, and "Smalltalk" for all the rest. It would be good to
keep "SmalltalkImage current" in place for compatibility, even if it does
not make any sense beyond that.

BTW, I don't know whether to laugh or cry when I read the class comment
for SmalltalkImage: "I represent the SmalltalkImage and partly the VM."

Dave




More information about the Squeak-dev mailing list