In my point of view, most people in the community wants a micro kernel
for Pharo (or better no kernel at all) on top of which it would be
possible to load packages such as a graphical interface, browsers, a
network library... I see two ways to achieve this goal.

1) The immediate unloading way. In this way, the Pharo maintainers try
to remove stuff as they are in the current image. However it is very
complex as each stuff is not necessarily well packaged and has
dependencies in a lot of other packages. Cycles in these dependencies
make things even worse and would prevent these stuff from being loaded
back. Some stuff are so complex that no one understands them anymore.

2) The make it better and unload way. Because the Pharo maintainers
think the previous way is too difficult, they choose to start by
making the current system better. This includes removing some stuff
here and there, but also include replacing crappy stuff by better
designed ones. When a stuff is correctly packaged it is going to be
much easier to remove it and load it back. During the first phase the
size of the system is going to decrease slowly as crappy stuff are
being replaced or removed. But not as fast as people would like.
However, during the second phase, the system will significantly and
rapidly shrink because it will be possible to remove stuff without any
problem. Even better, anyone will be able to load each stuff back.

-- 
Damien Cassou
http://damiencassou.seasidehosting.st

"Lambdas are relegated to relative obscurity until Java makes them
popular by not having them." James Iry

Reply via email to