On 5/25/13 8:02 AM, "Esteban Lorenzano" <[email protected]> wrote:

> well... I said the same when I was applying those changes, he :)
> I already made a note in my TODO list to refactor that as soon as possible too
> :)
> 
> Esteban
> 
> On May 25, 2013, at 12:55 PM, Camillo Bruni <[email protected]> wrote:
> 
>> I've seen a lot of progress for the Pharo Kernel by Pavel recently and I
>> really appreciate his work. But I have some questions I think we should
>> discuss.
>> 
>> There have been quite a few changes to make code work in the Kernel and to
>> reduce dependencies between packages. But I really have the impression that
>> many of these changes are of bad quality :/.
>> 
>> I do not want to offend people, but this is fairly important if we want to
>> have a nice code base.
>> 
>> Example:
>> ========
>> UnixResolver >> nbGetEnv: str
>> #NativeBoost asClassIfPresent: [ ^ self privNbGetEnv: str ].
>> ^ nil
>> 
>> The goal of this code is to conditionally do something in the main image but
>> continue to work in the kernel.
>> 
>> Observations:
>> =============
>> - #asClassIfPresent: and Co are bad
>> - Why do we clutter the main image if the kernel should change?
>> - Can't we solve these things by having proper other objects?
>> - Is the UnixResolver really needed in the Kernel?
>> 
>> I worked with Esteban last week on a similar case in the CommandLineHandler
>> and we ended up introducing a minimal superclass. I guess this goes much in
>> the direction of having proper NullObjects.
>> 
>> I really think we should not add these little nasty changes, but rather
>> introduce proper
>> new classes that can be unloaded if needed.
>> 
>> What do you think?
> 
> 
Could say the url for dowloading the last PharoKernel ?

Edgar



Reply via email to