I'm back! (and other things)

From: Shawn T. Rutledge <rutledge_at_cx47646-a.phnx1.az.home.com>
Date: Fri Oct 27 23:17:20 2000

On Fri, Oct 27, 2000 at 06:20:30PM -0700, Cameron Kaiser wrote:
> > I would also be interested, if they were affordable. They have a
> > reputation for being very innovative and I would like to steal as many
> > good ideas as possible for eventual incorporation into PDA versions of
> > the metawidget GUI system I'm building. (Somehow _everything_ seems
> > related to that lately...)
>
> Metawidget GUI system? Whassat?

There are a couple of entries at
http://gw.kb7pwd.ampr.org/~ecloud/journal/

Basically it's a much higher-level client/server GUI system than has
been created so far. NeWS seemed like a good place to start, and I
think I will be able to build some higher-level stuff on top of it.
So I'm trying to recreate something a lot like NeWS as the first step.
It is based on Postscript but goes beyond Display Postscript in a couple
of ways; one, it has an event model. Postscript code can handle events
and dynamically modify the GUI. Two, it is object-oriented.

I decided on the Postscript language only recently; there are a lot
of other possible choices, and I'm not sure this is the right one,
but at least it would seem to be one of the easiest interpreted
languages to optimize. Speed and memory are both critical, because
I want to do ports to some classic computers which exist in large
volumes (68K macs, 386 (maybe even 286) PCs, etc.) so that they can
have a second life as graphics terminals to run applications hosted
on more powerful machines.

A metawidget could be something as simple as a "command object", a
single atomic "action" that could be represented by a menu item or a
toolbar button depending on the client implementation; all the way up
to complete "view" tiers which are reusable across applications. What's
important is that I will be striving for total platform independence.
Many applications should be able to work on any scale of machine, from a
wristwatch up to a supercomputer; but with some graceful degradation of
functionality. (or not so graceful, in extreme cases when the screen
real estate and/or interaction techniques are completely inadequate)

Because so much is left to the client implementation, there will be a
lot of freedom to innovate new interaction techniques, which immediately
become available to all applications. So after the base implementation
is done, there can be some e.g. PDA implementations which have some of
the advanced interaction techniques that the Newton had ("commands" being
initiated by gestures, really good handwriting recognition, etc.) and
the applications will not need to know or care, because all the
functionality will be client-side. It's the logical next step beyond
"themes". And while a client-server GUI system is overkill on today's
PDAs, wireless internet access is quickly becoming available. Ricochet
is finally starting service in Phoenix. In a year or two I suspect I'll
be accessing applications running at home, from my PDA. (but maybe they
will be ordinary web applications, if I'm not done with the metawidget
stuff by then)

A Lisp machine could do graphics too couldn't it? Was there anything
particularly impressive about it? I seriously considered using Scheme
before settling on Postscript; but decided that it is harder to optimize,
because more structures would probably be dynamically allocated, and it
relies more heavily on garbage collection. I think my Postscript
interpreter will be able to do without garbage collection in most if not
all cases. But I don't know much about the internals of Scheme/Lisp
interpreters. I used Guile for some initial experiments.

-- 
  _______                   Shawn T. Rutledge / KB7PWD  ecloud_at_bigfoot.com
 (_  | |_)          http://www.bigfoot.com/~ecloud  kb7pwd_at_kb7pwd.ampr.org
 __) | | \________________________________________________________________
Received on Fri Oct 27 2000 - 23:17:20 BST

This archive was generated by hypermail 2.3.0 : Fri Oct 10 2014 - 23:33:18 BST