Subject: Re: X and lisp graphics

From: Keith Lantz <[email-masked]>
Date: 22 Nov 1986 1146-PST (Saturday)

There has been a certain amount of commentary on the xpert list about
user interface issues "beyond" window systems.  There is reason to
suspect that the same thing will soon happen on the news-makers mailing
list.  Because many of these comments reflect a relative lack of
knowledge of what is happening in the research community at large, I
offer the following "pointers" -- leaving each reader to decide what's
useful to them:

It is common for people working in one community to ignore
(deliberately or accidentally) the work of people in other communities.
While this has some advantages -- such as revelations do to coming at
something from a completely different angle, and being able to get
SOMETHING done without worrying about everyone else -- it is, in
general, not a particularly productive situation.  With respect to the
mailing lists at hand, it is clear that there is far too little
interaction between the window systems, graphics, and object-oriented
programming (environments) communities.

For example, the graphics community has spearheaded the bulk of the
work in what are referred to as "user interface management systems" and
"user interface toolkits" (witness the Seillac-II Workshop on
Methodology of Interaction (1979), the SIGGRAPH Workshop on Graphical
Input Interaction Techniques (1982), the Seeheim Workshop on User
Interface Management Systems (1983), and the SIGGRAPH Workshop on
Software Tools for User Interface Development (1986)).  The bulk of
this work addresses just those issues currently being discussed by Mark
Richer, et al., so they are specifically advised to some up to speed
thereon.

However, in doing so, they may be surprised to discover that there is
virtually no mention of window systems (or multi-tasking) in that work.
Indeed, the bulk of it makes the implicit discussion that you are
concerned with running one application at a time, and presenting a
common interface across applications only over time.  Why?  Because
that's how the graphics community at large regarded multi-tasking in
the years preceding the emergence of UIMS's -- there was no such thing!
So when those same people starting developing better ways to build
interactive interfaces (on top of all the wonderful graphics packages
they had previously invented), they did so in the
single-application-at-a-time framework.

Fortunately, many people in the graphics/UIMS community have in fact
realized the limitations (as opposed to errors) of their ways.  This
realization was manifested at the just-concluded Seattle Workshop by
general acceptance of a "reference model" my working group proposed for
"user interface architecture in the large".  Without going into
details, it distinguishes between "dialogue management" and
"workstation management", with the latter subsuming window systems, the
former subsuming user interface toolkits, and the two combined
comprising the "user interface management system" (if, in fact, that
term survives).  A document is forthcoming on this model, but you would
get a good idea from reading a report on a similar model proposed at
the SIGCHI Workshop on User Interface Reference Models, which report
will appear as "On User Interface Reference Models" (by yours truly) in
the forthcoming issue of SIGCHI Bulletin.

So, the graphics (or should I say "UIMS") community is beginning to get
the window system message.  What about the converse?  Well, the Alvey
Workshop on the Methodology of Window Management gave some evidence
that this would be the case.  Yet, the only "experienced" window system
hacker at the Seattle Workshop was myself (I think); the X, NeWS, and
Apple contingents, in particular, were not represented.  Beyond that,
it is clear from the discussions on xpert already alluded to that many,
many people reading xpert have little idea of what the UIMS community
is up to.

Finally, what about the object-oriented programming camp?  Well, they
are certainly having an impact on the graphics, window systems, and
sundry other communities -- similar to the way in which basic window
systems concepts are encroaching on the old-guard graphics/UIMS
community.  Alas, where object-oriented programming is most firmly
entrenched -- the integrated programming environments community --
there appears to be little interaction with the other communities.  I
hesitate to say that they appear to be rolling their own from scratch,
but I tend to believe that.  One consequence of this is that, as people
in the graphics and window systems communities adopt object-oriented
concepts, they discover those concepts don't necessarily apply overly
well -- taking disjoint address spaces and networks into account, for
example, when virtually all integrated programming environments have
been constructed for shared-address-space environments.

I hope this helps/inspires some of you to expand your horizons, without
having been overly pendantic (my apologies, if it has been).

Keith