[squeak-dev] what is holding back Smalltalk?

Igor Stasenko siguctua at gmail.com
Fri Nov 21 01:11:55 UTC 2008


I think that one of the major drawbacks of smalltalk is its 80's
implementation which offers 0 (zero) modularity.
A smalltalk image is a universe, which contains everything. It can't
be split on parts, you can't manage these parts to load/unload on
demand. Everything is tightly welded together and sometimes, even if
you want to get rid of some stuff - its very hard to do. Its like a
painting ink - once you stepped into it once - you start leaving
footprints everywhere.
Its very good from one side, but not always: for a people working in
contaminated areas, they need to pass a clean-up procedures to reduce
the risk of bringing unwanted stuff into that environment.
In smalltalk there is no such contaminated areas - you free to go
everywhere and leave your footprints. Who cares? :)
This is the problem: if people don't have a discipline and leaving
stuff everywhere they think it good to be, then at the end we got a
complete mess, no structure, no organization, just a half-working
pieces spreaded across many places.

Also, even if organized well, projects can't grow bigger than certain
amount, and at some point they become unmanageable, simply because no
single man can hold so much information in his head to understand it
and make some progress with it.
At some point, you have to split your project on separate parts and
delegate your work to other people. And also, make sure that these
parts can evolve more or less independently.
This is where fun begins: a smalltalk inherent implementation lacks
modularity and offers nothing to you how to break things apart without
losing consistency.
Instead, it makes you addict in using globals everywhere and be
careless about future :)

Another analogue: kids playing with lego puzzle. One kid puts one
piece on top of another, then second puts some more pieces on top of
it, and so on, then another kid came and realizes that if he replace
the piece inside a construction it would be much more elegant. But at
first attempt when he tries that, he breaks the whole construction :)

I hoping this will change in near future.  Smalltalk syntax is the
simplest and most powerful syntax i met.



-- 
Best regards,
Igor Stasenko AKA sig.



More information about the Squeak-dev mailing list