condenseSources problem, need advice
stéphane ducasse
ducasse at iam.unibe.ch
Thu Feb 17 08:00:42 UTC 2005
Yohiski
if you read the proposal I sent a while back, I propose the following:
Recognising that SystemDictionary is a mess and always be and people
will alos put mess there and stop to dream:). I wanted to clear that
stuff once for all and this is the proposal we thought off and sent the
9 Dec 2004 to the list
"Now for systemDictionary here is the situation and here is where we
would like to be after 3.9
In the past we created SmalltalkImage out of SystemDictionary in the
hope to have SystemDictionary be a nice and simple namespace class. Lot
of stuff has been put in coherent places (SystemNavigation, SpaceTally,
Changeset....) But this will not work since people get used to add
stuff there and Smalltalk is a cool name.
So the new proposal is the following one and is partly implemented.
Note however that it will require
from us a lot of work so if you are against it please say it and we
will only do it for us.
from a user point of view we want to have:
only one class: SmalltalkImage/SystDict for all the image related
services
(VM pluggins, ....) but the namespace behavior will be delegated to
Namespace.
All the previous code referencing Smalltalk will work but with
deprecation for the namespace interface.
From the language programmer point of view:
there will be a namespace that can be used for experimentation
this class will replace the environment class of dan that is now
obsolete
We plan to proceed that way:
- create a class namespace with a new interface (done)
- delegate from SystemDictionary to this new class (done but not
published)
- deprecate all the namespace method of systemDictionary (but we
likely want to keep them for some time)
- fix all the in image senders of Smalltalk as a namespace to use the
new class (using self environment for example).
(partly done over the previous years)
- merge back SmalltalkImage into SystemDictionary: the idea here is to
not have SystemDict as a subclass of Dictionary.
- have Smalltalk pointing to an instance of this new entity, so that
everybody is happy."
So tell if this makes sense because this way we get a cleaner system
with the mess concentrated in SystemDictionary
Stef
On 17 févr. 05, at 1:36, Yoshiki Ohshima wrote:
> Stef,
>
>> strange because I remember that this was fixed.
>> I feel sorry about that I would really like to fix that in 3.9
>> but people have to agree on that because I do not want to get the same
>> rant as the last time (you know idiot academic doing useless
>> refactoring
>> which I can only admit for Beeper beep).
>
> In this case,
>
> * The transition to SmalltalkImage is almost done, so it
> wouldn't have too much of that.
> * The condenseSource method has many dozens of lines, while the
> deprecated method will have two or so. It doesn't add too much
> complexity.
> * If we remove LastQuitLogPosition class var from SystemDictionary,
> that will be a win. Adding Beeper wasn't a win.
>
> So, I don't think that moving #condenseSource to SmalltalkImage and
> rewrite SystemDictionary>>condenseSource so that it simply call the
> SmalltalkImage one wouldn't have that much resitance.
>
> -- Yoshiki
>
More information about the Squeak-dev
mailing list
|