rws@EXPO.LCS.MIT.EDU (Bob Scheifler) (11/30/89)
The Program Committee this year consisted of:
Doug Blewett, AT&T Bell Laboratories
Nathaniel Borenstein, Bell Communications Research
Bruce Cameron, Mayo Foundation
Donna Converse, MIT X Consortium
Jim Fulton, MIT X Consortium
Christian Jacobi, Xerox PARC
Scott McGregor, Digital Equipment Corp.
Al McPherson, Boeing Computer Services
Bill Moran, Yale/IBM
Bob Scheifler, MIT X Consortium
We expect the following "Birds of a Feather" sessions to be held at the
X Conference. Approximately 8 BOFs will be held on each of the 3 days.
Motif
XView
InterViews
Lisp Toolkits
Performance Evaluation
Ada and X
Emacs and X
X and "Other" Languages (not C, C++, Lisp, or Ada)
R4 Xt Intrinsics
TAE Plus 3
Interactive Development Tools
C++ and X
Server Implementors
Testing and Validation
Internationalization
Colormaps, Colors, and Image Display and Manipulation
User Interface Management Systems
Avoiding Pitfalls in Writing Widgets
VEX and Overlays
Computer Conferencing and X
Gwm
Session Managers
The following talks will be given during the main sessions on January 16 and 17.
(The abstracts are MIT's extractions from the proposals submitted. My advance
apologies to the authors if we've butchered your work.)
The Changes Made to the Xt Intrinsics in Release 4
Ralph R. Swick
Digital Equipment Corporation/M.I.T. Project Athena
The main intent of this presentation is to show to the audience that
while many things have been added in many areas, binary compatibility
can be maintained for 98% of applications and widgets. I will present
some rationale for the more significant improvements and simply
enumerate the simpler and more easily understood improvements.
The Xt Intrinsics: Lessons for the Next Generation
Paul Asente
Digital Equipment Corporation Western Software Lab
The X Toolkit Intrinsics were designed under tight time constraints
simultaneously with software that uses them. As a result, some
decisions made early on in the design turned out to be the wrong ones,
but too much derived software existed to make radical changes. This
talk discusses some of the features of the toolkit that ended up being
over-complicated or hard to use, including how entries in translation
tables interact, some details of geometry management, and difficulties
in detecting programming errors.
TAE Plus: Transportable Applications Environment Plus
Marti Szczur
NASA Goddard Space Flight Center
TAE Plus is a portable tool for designing, building and tailoring an
application's user interface (UI) and for controlling the designed UI
throughout the application's execution. The main component of TAE Plus
is a WYSIWYG user interface designer's "WorkBench" that allows an
application developer to interactively construct the look and feel of an
application screen by arranging and manipulating "interaction objects"
(e.g., radio buttons, menus, icons, stretchers, rotators, etc.).
Beyond the Interface: Rapid Interactive Development of MOTIF Applications
with a User Interface Manager for X
Frank Hall
Hewlett-Packard Company, Corvallis Information Systems
Hewlett-Packard and Visual Edge Software, Ltd., are creating a rapid
development tool which combines an interactive layout facility with a C
interpreter to address the whole task of creating any application based
on the OSF/Motif widget set. The resulting productivity gains have
exceeded two orders of magnitude in field use. This presentation
reviews the tool's functionality and its potential role in the
development cycle of X applications.
An Object-Oriented, Constraint-Based, User Interface Development Environment
for X in CommonLisp
Brad A. Myers
School of Computer Science, Carnegie Mellon University
The Garnet User Interface Development Environment contains a
comprehensive set of tools that make it significantly easier to design
and implement highly-interactive, graphical, direct manipulation user
interfaces. It is implemented in CommonLisp on top of the X/11 window
manager. The lower layers of Garnet provide an object-oriented,
constraint-based graphical system that allows properties of graphical
objects to be specified in a simple, declarative manner and then
maintained automatically by the system. The higher layers of Garnet
include an interface builder tool, called Lapidary, that allows the user
interface designer to draw pictures of @i(all) graphical aspects of the
user interface. Another high level tool is an automatic dialogue box
and menu editor, called Jade.
OI: A Model Extendable C++ Toolkit for X Windows
Gary Aitken
Solbourne Computer, Inc.
OI is a C++ based toolkit for writing clients intended to run using the
X Window System Version 11. Like other toolkits, the OI provides a
basic set of objects used in constructing an interface. Unlike other
toolkits, these objects are generic in nature. The particular
appearance and behavior of an object may be determined at execution time
-- the same executable image may run under two different interaction and
appearance models. The current library supports OpenLook and a partial
Motif implementation; a complete Motif implementation is expected by
spring 1990.
XOOT -- The C++ X Object-Oriented Toolkit for the rest of us
George W. Sherouse
Radiation Oncology, Univerity of North Carolina
XOOT is an X Object-Oriented Toolkit intended to simplify and structure
the design and implementation of X applications. In addition, it is
intended to address some issues which arise in development of complex
X-based applications, such as image display and graphics software. XOOT
is specifically designed for use in applications which are
resource-intensive. The "standard" toolkits with which we are familiar
make several resource-related assumptions which are not appropriate for
applications like our image-based medical CAD work.
The Answer Garden
Mark Ackerman, Thomas W. Malone
Center for Coordination Science, MIT
Two of the considerable problems in using X are finding a starting point
when learning X initially and understanding the site dependencies in
using X. NetNews has a early continuous flow of similar, naive
questions. Users, even in research and development laboratories, have
difficulty in distinguishing MIT releases from vendor releases, locating
source materials at their site, knowing about bug fixes, and finding the
proper people to ask. The objective of this project is to design and
develop an information tool that will alleviate these problems.
Internationalization in the X Window System
Sivan Mahadevan
AT&T Bell Laboratories
There is significant interest today in defining standards to ensure
internationalization support in X. Such standardization in X is
necessary to permit application writers to develop truely
"internationalized" applications, or applications that require no source
code modifications for correct operation in any national language or
geographic location. In this talk, I will discuss the requirements of
internationalization in X and our experience in providing
internationalization support in AT&T's Intrinsics-based OPEN LOOK(tm) X
Toolkit.
Unidraw: A Framework for Building Domain-Specific Graphical Editors
John Vlissides
Stanford University
Unidraw is a framework for creating object-oriented graphical editors.
The framework defines four basic abstractions: components encapsulate
the appearance and behavior of objects, tools support direct
manipulation of components, commands define operations on components,
and external representations define the mapping between components and a
file or database. Unidraw also supports multiple views, graphical
connectivity, and dataflow between components. This talk presents
Unidraw and three prototype domain-specific editors we have developed
with it: a drawing editor, a schematic capture system, and a user
interface builder. Unidraw is implemented in C++ on top of InterViews
and X.
XDMCP -- A First Step in Making it Easier to Get Started in X
Dave Mackie, Ed Basart
Network Computing Devices
This talk will cover XDMCP, the R4 usefulness of XDM and the technical
trail that took us from the problems with R3 XDM, the addition of
security, and the remaining problems that R4 XDM does not solve.
VEX: features and current state
Todd Brunhoff
Visual Systems Lab, Tektronix, Inc.
Current design details of the VEX extension will be presented, including
descriptions of how the protocol expresses video input, logically how it
is displayed, and how various existing hardware is expected to fit into
this paradigm; video output, the logic of capturing graphics, along with
current hardware; and device control, why it is in X as opposed to out
of X, and what the functionality is expected to accomplish.
X server optimization and hardware issues
Keith Packard
MIT X Consortium
The MIT Sample server for Release 4 represents a dramatic departure from
previous releases. Instead of providing a proof-of-concept for the
server side of the X protocol, this release focuses on a wide range of
performance issues. Besides recognising performance problems in the
hardware independent code, we were able to isolate and catagorize
problems which confront the X server implementor on a wide range of
hardware systems. An overview of the design of the R4 server will be
presented, along with a candid discussion of tradeoffs which are
inherent in both server implementation and hardware design as it affects
the core X server.
A Multithreaded Server for X and PEX
Ian Elliott, John Brezak, Nathan Meyers
Hewlett-Packard Company
The basics of multithreaded programming, various issues, alternative
solutions, and a recommended direction will be discussed. Among the
issues discussed will be: partitioning core X and extension code into
multiple threads; isolating the server implementation from the threading
package; ensuring correct execution with preemptive thread scheduling;
performance impacts of multithreading.
Opportunities with Lightweight Processes
Christian P. Jacobi
Xerox PARC
There are many reasons to use multiprogramming. It might be a way to
deal with multiprocessors, it might be fun, or, sometimes it even helps
engineering your software right. Multiprogramming is an integrated
feature of our Cedar programming language. Since I have written an
"XLib" and a "Toolkit" for Cedar I have learned some lessons about
multiprogramming with X-Windows.
The Good, the Bad, and the Ugly of Window Sharing in X
John F. Patterson
Bellcore
The talk describes a window sharing system that I have designed and
implemented based on the X Window System and identifies features of X
that are either good, bad, or unpleasant when implementing a window
sharing system. The talk consists of four major parts. A background
part discusses both window sharing in general and my implementation in
particular. Then the next three parts present the three lists of X
characteristics: good, bad, and ugly.
Using speech recognition to augment window manager functions
Chris Schmandt
MIT Media Lab
This talk will describe Xspeak, a speech recognition interface for
navigation under X windows. It will discuss: window manager operations
amenable to speech input; Xspeak implementation and operation;
interactions and problems with window managers; results of evaluation
among a small community of users.
Gwm, the emacs-like window manager
Colas Nahaboo
BULL Research FRANCE
I will present Gwm, the emacs-like window manager, show what experience
has been gained since its general release on expo in July 89, and how I
plan to enhance it in the future.
xRooms: A Multiple Virtual Workspace Interface for the X Window System
Bill Janssen
Xerox Corporation
This talk describes the implementation of Xerox's "Rooms" as a
co-process of an X Window System window manager. Rooms is a workspace
manager that supports grouping of related activities into `tasks', rapid
switching between tasks, an overview of current tasks, and
suspension/resumption of tasks. Issues of X Window System session
management and client/window-manager cooperation are addressed. A new
strategy for non-iconification, based on the Rooms overview system, is
discussed.
Rooms, External Window Management, and the ICCCM
Hania Gajewska
Olivetti Research California
Mark S. Manasse
Systems Research Center, DEC
Rooms management is an aspect of window management that can be separated
from the more conventional role of a window manager -- that of providing
a user interface for window positioning and sizing. In this talk, we
consider the problems of implementing an external rooms manager, that
is, one which is a separate program from the window manager. We further
consider the problems arising in the construction of a
window-manager-independent external rooms manager, that is, one which
provides rooms management functionality with any ICCCM-compliant window
manager. We exhibit some of the restrictions this imposes on the style
of rooms management, and some of the problems with the current ICCCM
that makes this harder than it might be.
The following three talks will be given during a Server Implementor's
mini-session, held concurrently with BOFs:
The Application of Real-Time Paradigms to a Client-Server Window System
Sam Black
Concurrent Computer Corporation
The characteristics and behaviour of the X Window System is sufficient
for most graphics applications. Real-time applications, however,
require special func- tions to attain real-time response. Many people
feel that high performance is sufficient to claim that a system is
real-time. This is not the case. In order to attain real-time response
and the feel of a real- time system, significant modifications need to
be made to the X server, and an extension to the X protocol is required.
Technology Directions in Hardware Assisted X
Dick Verburg, John Cook
IBM
X server graphics management
Hardware Exploitation
Division of labor--server, client, kernel
Adapter Requirements
Graphics client requirements
Performance comparisons (high level)
Proposed architecture
Porting the X-11 Server to Non-Memory Mapped Graphics Cards
With Graphics Accelerators
Erich Rickheit, Dave Pelland, Rich Miner
Center for Porductivity Enhancement, University of Lowell
Numerous contemporary graphics and windowing peripherals are being
developed with custom or over the counter graphics processors. In many
instances these graphics systems do not allow a host CPU to access the
graphics fame buffer directly. In these systems there is often a
command level interface which is used to communicate between the host
and graphics processor. This presentation will focus on the design of
an X11 server for such environments. The presentation will provide a
general overview of the issues involved in such a port, using examples
from a server implementation developed for the TIGA software interface
for a Texas Instruments TMS34010 based graphics card.
The following three talks will be given during a Testing and Validation
mini-session, held concurrently with BOFs:
Enhancing the Input Synthesis Extension with Xtrap
Alan Jamison
Digital Equipment Corp.
This talk will present experiences within Digital in going beyond the
functionality available in the current version of the Input Synthesis
Extension. It will reflect actual work which has taken place to date and
recount various lessons learned during the process. It will also
describe how this work is being used at Digital for performing testing
of the DECwindows product which is based on X. Alternative methods of
input synthesis and output detection based on non-screen compare methods
will be discussed as well as how they apply to solving problems in the
windows testing space.
Automating X Window System testing by User Synthesis
Dan Coutu
Digital Equipment Corp.
This talk will describe an X application (Xigor) which helps to automate
testing of X via a record/playback mechanism. Xigor uses Input Synthesis
concepts as well as X request detection, time delays, etc. to control
the recording and replay of an interactive user session. The recording
can then be converted into a C script for detailed customization and
editing. After this script editing process your test program is now
capable of acting as a synthesized user instead of just a sequential
playback utility. Error detection and correction can be a part of your
script. The talk will address functionality and portability of the tool
as well as future directions.
1000 Unemployed Monkeys
Len Wyatt, Liz Heller
Sequent Computer Systems, Inc.
At Sequent, graphical applications are being made based upon the X
Window System and the X-Pression User Interface Management System
(UIMS). The UIMS allows applications to construct objects (menus,
scrollbars) and processes I/O for the objects (locates a mouse click
within a menu title, for example, and pulls the menu down). The test
tools use the intrinsic knowledge that the UIMS has of the location and
state of all the objects it manages. Requests have been added to the
UIMS to allow a testing agent to access this information.
The following talk will be given at the start of a BOF:
Pitfalls in Widget Writing and In Using Widgets to Write Applications
Miles O'Neal, Susan Liebeskind
Sales Technologies Inc.
Making Things Happen
Resources
Timing Issues
Widget Partitioning
Object-Orientedness Issues
Breaking The Rules
Nested Event Loops
Toolkit or not Toolkit
Debugging in Xlandrws@EXPO.LCS.MIT.EDU (Bob Scheifler) (11/30/89)
From: anon
I am sure I missed it somewhere, but is the X conference for Gurus only
or is it also intended for the neophyte.
The Conference should have something for everyone! It is definitely not
targeted just at gurus.gordon@banyan.UUCP (Gordon Lee@Eng@Banyan) (12/01/89)
In article <8911292129.AA07895@expire.lcs.mit.edu> rws@EXPO.LCS.MIT.EDU (Bob Scheifler) writes: > >The Conference should have something for everyone! It is definitely not >targeted just at gurus. Ok, got the "when" from Suject: line, and the "what" from your more recent extensive posting, but, where is the next X conference being held ? (please be Boston/Cambridge, please-oh-please-oh-please...) what is the schedule of events ? pricing ? Me: I am currently embarking on a self-started project to get X up and running on Compaq 386sx with VGA running Banyan modified Intel/AT&T SystemV 3.2. The os dependencies work is within my current experience. I have a learning curve to climb with the dix portion. Any advice from anyone who may have done anything similar is certainly welcome! Disclaimer: This is a personal experiment/project, Banyan doesn't "know" -- ============================================================================= Gordon Lee gordon@banyan.com or gordon@bu-it.bu.edu Banyan Systems, Inc. Westboro, MA "Pay no attention to that man behind the keyboard..."