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?


Reply via email to