web browsers (was: squeak laptop for the rest of us)

Ned Konz ned at squeakland.org
Fri Apr 22 19:02:51 UTC 2005


On Wednesday 20 April 2005 7:39 pm, Jecel Assumpcao Jr wrote:
> The two layout systems I am most familiar with are TeX and MetaFont. The
> latter depends very much on a simplified constraint system but is hardly
> performance critical. TeX is more limited, but even that was considered
> too slow so John Maloney eliminated most of the complications with the
> columnMorph/rowMorph and shrinkWrapped/spaceFilling scheme.
>
> Now Alan always point to Sketchpad in his talks as "an improvement on
> its successors" (not a quote) and I am aware of several constraint
> systems that were implemented in Smalltalk and Self. Certainly the old
> block based layout in MVC was slightly related in spirit.
>
> The question is this: can a simple constraint based layout system be
> built for Squeak on top of which we could create all the stuff we need
> such that it wouldn't make us long for the "blazing fast days of
> Morphic"?

John Maloney certainly has the background to answer that, having done a couple 
of papers (and his PhD thesis?) on constraint systems for GUIs.

@article{213398,
 author = {John H. Maloney and Alan Borning and Bjorn N. Freeman-Benson},
 title = {User-interface construction with constraints},
 book = {Visual object-oriented programming: concepts and environments},
 year = {1995},
 isbn = {0-13-172397-9},
 pages = {113--127},
 publisher = {Manning Publications Co.},
 address = {Greenwich, CT, USA},
 }

I'm sure he can give more information on this, but when we talked about 
general-purpose constraint systems for Squeak GUIs I got the impression that 
he felt that the difficulty of communicating to the user just what was (or 
wasn't) happening in the constraint system would get in the way of general 
usefulness.

My impression has been that non-rigorous constraint systems (i.e. ones that 
don't require all of their constraints to be satisfied all of the time) may 
be helpful with GUI construction.

However, we haven't fully attacked the simplest of layout schemes yet.

For instance, the GTK+ scheme that uses horizontal or vertical containers with 
different kinds of glue between their contents is at least easy to program 
and explain.

-- 
Ned Konz
http://bike-nomad.com/squeak/



More information about the Squeak-dev mailing list