[squeak-dev] Regarding Polymorph

Gary Chambers gazzaguru2 at btinternet.com
Sat Mar 13 16:47:25 UTC 2010

For what it is worth...
I have been able to load Polymorph into trunk, not the easiest (mainly due 
to MC differences wrt Traits), takes
around 5 minutes of manual fixing while loading...

Once "in", clearly shows up the areas that have changed in trunk though...

(process instructions available if desired...)

My advice is, as I think you intend, is to learn from Polymorph and, even 
further, push for some kind of overall UI framework that
can support the ideas. Otherwise you'll run into the same issues that I had 
to deal with (backwards compatability, acceptance, with/without-EToys 

I believe you wanted to know what the "essence" of Polymorph was (in 
priority order)...

1. Look and feel familiar to end-application-users (non-Squeakers!).
2. Support for commonly expected widgets/controls/dialogs.
3. Integration with the (image/ide) environment to leverage the above for 
4. Improving tools for development (Diff tools etc.).
5. Hooking Morphic to allow look/feel to be extensible.

Given the (end-user-unnaceptable) state the Squeak UI was in at the time of 
inception (2006), there was no way we could deliver an end-user application 
with the way Squeak was then.

Even now there is no infrastructure to be able to do these things in a 
"clean" manner... A lot of work to refactor Morphic to handle such things 
even now... perhaps time for a change, though there's a lot of *great* stuff 
in Morphic when investigated.

Regards, Gary

----- Original Message ----- 
From: "Casey Ransberger" <ron.spengler at gmail.com>
To: "The general-purpose Squeak developers list" 
<squeak-dev at lists.squeakfoundation.org>
Sent: Friday, March 12, 2010 5:33 PM
Subject: [squeak-dev] Regarding Polymorph

>I tried for weeks early on to get polymorph working in a trunk image.
> I even had it working for awhile, but I failed at what I wanted to do,
> namely to find it's essence and do for it what Andreas has done for
> traits.
> When enough Pharoisms had crept in that it was no longer loadable in
> Squeak, I tried another approach; just modify the object graph of the
> UI directly. For my experiment, (simply installing new buttons in the
> system windows) I learned of a couple of interesting gotchas. E.g.
> That windows made by toolbuilder behave differently than windows
> created the old fashioned way.
> Anyway I'll cut to the chase: having gotten to know the Polymorph
> codebase a little, I can say that it is full of ugly workarounds for
> the shortcomings of the UI in Squeak, and that this explains in part
> it's complexity.
> I think, as we are Trunk developers, that we can do much better than
> Polymorph's bolt-on solution. I think we can get a smaller, more
> elegant solution. This is something I'm passionate about, and I plan
> to spend some more time exploring in the skinnability department, once
> I'm done with 4.0.
> On Friday, March 12, 2010, Edgar J. De Cleene <edgardec2005 at gmail.com> 
> wrote:
>> On 3/11/10 10:47 PM, "Levente Uzonyi" <leves at elte.hu> wrote:
>>> Noone forces you to use Squeak.
>>> Levente
>> only misdirect those who know where they go
> -- 
> Casey Ransberger

More information about the Squeak-dev mailing list