[squeak-dev] Regarding Polymorph

Casey Ransberger ron.spengler at gmail.com
Sat Mar 13 01:57:51 UTC 2010

Igor: I didn't say that Polymorph was "for Pharo only," what I said
was "When enough Pharoisms had crept in that it was no longer loadable
Squeak, I tried another approach..."

Actually shortly after that enough Trunkisms had crept into Squeak
that I was no longer easily able to work around the Pharoisms,
ahahaha. At that point on loading it I would get a million debugger
windows and the system would thrash and tank. That's when I finally
gave up and started looking at smaller and simpler solutions.

It's mostly being developed in Pharo now; and as such, the latest bits
have (at last I checked and tried loading it up in Trunk) dependencies
on some things that are in Pharo but not in Squeak. At this point,
there is a bit of porting to do in order to get it working in Trunk;
after porting it, I would probably have a fork of it, unless I did
some work on Trunk itself to incorporate some Pharoisms. Both of these
are IMHO valid approaches, but my point was orthogonal to this: that I
think I can do better than Polymorph. Think small, simple,
lightweight, loadable and unloadable, skinning by design, not a
bolt-on collection of workarounds and multiple solutions to the same
and similar problems.

My observation in having browsed and played with the code is that
Polymorph was developed in an environment when it was hard to get
support for things into the core of Squeak; that's not the case
anymore. One example here is that toolbuilderized things don't behave
like other things, meaning Polymorph had to solve some problems (IIRC,
system window buttons) twice, which is inelegant to my mind.

I'm not knocking Polymorph. It works great! I had a lot of fun playing
with it and rolling up custom subclasses of of UITheme when I was
first learning to Squeak.

And I have no qualms about saying that I admire what the Pharo team
has done, either! I think it's neat that they took their vision in
their own direction, and marched to the beat of their own drum. I use
Pharo, and I enjoy using Pharo.

My interest in Squeak is stronger than my interest in Pharo, however,
and so here I am.

On Fri, Mar 12, 2010 at 5:02 PM, Igor Stasenko <siguctua at gmail.com> wrote:
> Casey,
> i think you are a bit subjective when saying that Polymorph is for Pharo only.
> Originally, it was developed for Squeak and used by squeak.
> Then, in times of apathy, when Squeak was a rotting swamp, Pharo team
> took an effort to incorporate
> this package into Pharo.
> --
> Best regards,
> Igor Stasenko AKA sig.

Casey Ransberger

More information about the Squeak-dev mailing list