Virtual Morphs

Mats Nygren nygren at sics.se
Sun Jul 23 22:52:26 UTC 2000


Hi,

An idea for Morphic.

In a morphic world everything is supposed to be morphs and be handled
in uniform ways. Thats a good idea. It's not yet realized though. I will
deal with two problems here.

1) Not everything is a morph, in particular characters in an editor is not
morphs.

2) Some things are morphs but they have a high price in performance.
List panes are examples of this. (So I believe, not knowing the precise
details, but on a slow machine I've been using there is a limit in number
of browsers etc beyond which unresponsiveness becomes unreasonable).

The solution I propose is to keep and extend the uniformity to the user
of the morphic world at the price of more work for the implementors.

There are three alternatives:

actual morphs - uniformity, nonefficiency, no extra work
nonmorphs - nonuniformity, efficiency, minor extra work
virtual morphs - uniformity, efficiency, major extra work

With a virtual morph I mean something that appears to the user as
if a bunch of morphs exist while speaking of what actually exists
in object memory that isn't (always) the case.

A good use as mentioned above is characters as virtual morphs, no more editors,
simply use halos.

One way to organize this is to have the containing morph create wrapper
morphs as the need arises, normally when halos are requested.

Non-uniformity in implementation becomes uniformity for user.

Compare with the posting "Keyboard focus to halos".

This should be compared (and unified) with Morphic Wrappers.

I realize this is a substantial amount of work. But together with other
good things existing and arising withing Squeak this deserves its place
in the scheme of things. IMO.

/Mats





More information about the Squeak-dev mailing list