Re-doing Morphic ( Was: Re: Traits prototype image )

Daniel Joyce daniel.a.joyce at
Tue Feb 11 02:04:14 UTC 2003

> Bottom line of this: Morphic is cool. Neither the designers nor the
> users are to blame for where it ended up in Squeak. Squeak
> (Smalltalk) itself is - by not providing any means to build the right
> "fences" into the framework. So my essential feeling here is: If you
> want to fix Morphic, then fix Smalltalk. Morphic is simply a place
> where it shows many of its intrinsic shortcomings for all'y'all
> kiddies.
> Cheers,
>   - Andreas

But it's merely due to poor oversight. People allow one-off hacks, etc, 
to make it into the image. I'd like to see a 'pure' morphic, which 
people can make ugly all they want through squeak-map add-ons, etc. 
Buut, the examplar would still be there, maintained and cleaned up.

The problem is no-one takes ownership of anything. People keep adding on 
and on, and nothing changes.

Sometimes code cleanups are needed. One can write ugly crufty libraries 
in C, but one shouldn't. I know, I worked on a ugly crufty C product. 
So saying 'cruftiness is a failure of the language' is a poor excuse. 

Crufty code is always the failure of the programmer.

Either he's a) rushed b) lazy or c) hacking together a prototype.

None of the above should make it into core-morphic.

It seems changes get harvested from the list willy-nilly, and rolled in 
without a code review for "does it look good, and is it crufty"?

"It works" seems more important than "It will cause headaches in the 

Part of the reason why MORPHIC is crufty is someone let in that first 
hack. Then someone extended that hack, then someone worked around an 
issue raised by those previous hacks. No one fixed the original 

And it's not just morphic folks, it's the whole system.

Any language can lead to crufty programs. You can't blame SmallTalk for 
it. What's needed is someone saying "No, this won't go in".

Pehaps we can isolate the cruft from Morphic, and let people load in 
what cruft they like from Squeak Map.


More information about the Squeak-dev mailing list