🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.epoch.misc
Article #1919

Re: GWM vs Motif

#1919
From: Niels Mayer
Date: Tue, 09 Jul 1991 04:11
154 lines
9409 bytes
In article <1991Jul4.164307.8393@m.cs.uiuc.edu> carroll@cs.uiuc.edu (Alan M. Carroll) writes:
>A final point is our view on this. We don't believe that Epoch should
>do menus - we believe that it is the wrong place to put that
>functionality, for exactly the reasons Mr. Krolikoski brought up - it
>would tie Epoch to a particular look&feel for menus. What we'd really
>like to see is a standard mechanism where the WM can be requested to
>generate a menu, and pass back the result. The code that Dan posted
>shows a way to do this with GWM now, which is one reason we have a
>preference for that WM.

I'm not sure that the "menu server" should have to be part of the window
manager. Although I like Gwm alot, tieing users to a particular window
manager is taking a big step backward in the X world. Besides, you'd end up
losing alot of "customers" by asking them to use a wm that they don't want
to use, or a wm that isn't supported within their organization. OSF/Motif
users may prefer mwm, HP VUE users will want to get the "rooms"
capabilities provided by vuewm, "Open" Look users will want olwm, and
various others will want to use the various virtual WMs available.

That's why I think that UI server functionality should be separable from
the window manager, and that's why approaches such as the Richard Hess' Xmu
menu server running atop my WINTERP Motif Widget INTERPreter is the right
way to go. For more info on WINTERP/Xmu, see my previous posting in reply
to Dan Pierson's post.

>As part of my thesis work, I will be producing a general Motif widget
>server, which will talk to Epoch*, and it should be released about the
>time I graduate, later this year.

Have you considered WINTERP?? WINTERP can be used as "a general Motif
widget server" but it is more than that since it contains an embedded tiny
lisp interpreter (based on David Betz' XLISP 2.1) which allows you to put
dialog and application code into WINTERP.

Input to WINTERP's lisp evaluator is through a server socket (either inet
or unix domain) which thereby allows for other applications and processes
to talk to WINTERP.  Most people use WINTERP to build entire applications
entirely within Winterp-Lisp, but you can also use WINTERP as a UI server
for an application running as a separate process.

WINTERP 1.13 (release date unknown) will also contain an interface to Don
Libes' "expect" library -- this will allow for communication with
subprocesses connected to WINTERP via ptys, and will allow for concurrent
interaction with multiple unix subprocesses all controlled by a
non-blocking Motif-based UI. The effect is similar to emacs' process-filter
and process-sentinel capabilities, and will allow WINTERP to become a
general GUI-wrapper for terminal-based programs. The same facilities can
also be used to communicate with other serverized applications (via telnet
or rlogin).  I have a good part of this working already, but more testing,
coding, and documentation needs to be done before release.

A further advantage of using WINTERP is that it is relatively portable,
stable and reliable because it has been publicly available since the MIT
X11r4 contrib release. The current release, version 1.12, runs on a
number of different unix machines, e.g.
        * HP9000s3xx (68030/68040) running HPUX 7.0, HPUX 6.5.
        * HP9000s8xx (HP's PA-RISC) running HPUX 7.0, HPUX 3.1.
        * HP9000s7xx (HP's PA-RISC 1.1) running HPUX 8.0
        * Sun Sparc 2 running SunOS Release 4.1.1
        * Data General AViiON (m88k, DG/UX 4.30, GNU C 1.37.23)
        * DECStation 3100 running Ultrix.
	* SGI 4D ("MIPS, SGI Unix, latest release (Cypress)")
I've received reports that previous versions of WINTERP have run on the
following:
        * IBM RS6000 AIX 3.1
        * Sun 3 running SunOS 4.0.3
        * MIPS (Mips RS2030)
        * Intel System Vr3.2 v2.2 (using Intel X11R3 with Intel Motif v1.0.A and TWG/TCP v3.1)
        * Apollo's 680xx machines.

			--------------------

Since my mention of WINTERP may generate many "what is WINTERP" e-mails,
I'll go ahead and answer that now with my standard WINTERP blurb:

==============================================================================

WINTERP: An object-oriented rapid prototyping, development and delivery
environment for building user-customizable applications with the OSF/Motif
UI Toolkit.

------------------------------------------------------------------------------

WINTERP is a Widget INTERPreter, an application development environment
enabling rapid prototyping of graphical user-interfaces (GUI) through the
interactive programmatic manipulation of user interface objects and their
attached actions. The interpreter, based on David Betz's XLISP, provides an
interface to the X11 toolkit Intrinsics (Xtk), the OSF/Motif widget set,
primitives for collecting data from UN*X processes, and facilities for
interacting with other UN*X processes. WINTERP thus supports rapid
prototyping of GUI-based applications by allowing the user to interactively
change both the UI appearance and application functionality. These features
make WINTERP a good tool for learning and experimenting with the
capabilities of the OSF/Motif UI toolkit, allowing UI designers to more
easily play "what if" games with different interface styles.

WINTERP is also an excellent platform for delivering extensible or
customizable applications. By embedding a small, efficient language
interpreter with UI primitives within the delivered application, users and
system integrators can tailor the static and dynamic layout of the UI,
UI-to-application dialogue, and application functionality. WINTERP's use of
a real programming language for customization allows WINTERP-based
applications to be much more flexible than applications using customization
schemes provided by the X resource database or OSF/Motif's UIL (user
interface language).

An environment similar to WINTERP's already exists in the Gnu-Emacs text
editor -- WINTERP was strongly influenced by Gnu-Emacs' successful design.
In Gnu-Emacs, a mini-Lisp interpreter is used to extend the editor to
provide text-browser style interfaces to a number of UN*X applications
(e.g. e-mail user agents, directory browsers, debuggers, etc). Whereas
Emacs-Lisp enables the creation of new applications by tying together
C-implemented primitives operating on text-buffer UI objects, WINTERP-Lisp
ties together operations on graphical UI objects implemented by the Motif
widgets. Both achieve a high degree of customizability that is common for
systems implemented in Lisp, while still attaining the speed of execution
and (relatively) small size associated with C-implemented applications.

Other features:
        * WINTERP is free software -- available via anonymous ftp from
          export.lcs.mit.edu.
        * Portable -- runs without porting on many Unix systems.        
        * Interface to gnuemacs' lisp-mode allows code to be developed
          and tested without leaving the editor;
        * Built-in RPC mechanism for inter-application communications;
        * XLISP provides a simple Smalltalk-like object system.
        * OSF/Motif widgets are real XLISP objects -- widgets can be
          specialized via subclassing, methods added or altered, etc.
        * Automatic storage management of Motif/Xt/X data.
        * Contains facilities for "direct manipulation" of UI components;

You may obtain the latest released version of the WINTERP source,
documentation, and examples via anonymous ftp from internet host
export.lcs.mit.edu (18.30.0.238): in directory contrib/winterp you will
find the compress(1)'d tar(1) file winterp-???.tar.Z. (??? represents the
version number). Slides, papers and further documentation can be found in
directory contrib/winterp/papers.

If you do not have Internet access you may request the source code to be
mailed to you by sending a message to winterp-source%hplnpm@hplabs.hp.com
or hplabs!hplnpm!winterp-source.

There is also a mailing list for WINTERP-related announcements and
discussions. To get added to the list, send mail to
winterp-request%hplnpm@hplabs.hp.com or hplabs!hplnpm!winterp-request.

For discussions about XLISP, see the USENET newsgroup comp.lang.lisp.x.

-------------------------------------------------------------------------------
            Niels Mayer -- hplabs!mayer -- mayer@hplabs.hp.com
                  Human-Computer Interaction Department
                       Hewlett-Packard Laboratories
                              Palo Alto, CA.
                                   *
Technical Details
Message-ID: <7088@hplabsz.hplabs.hpl.hp.com>
Path: arc1-ca.pugleaf.net!gmdzi!unido!mcsun!uunet!elroy.jpl.nasa.gov!sdd.hp.com!hplabs!mayer
References: <9107011500.AA27407@a.cs.uiuc.edu> <PIERSON.91Jul1163832@xenna.encore.com> <1991Jul4.164307.8393@m.cs.uiuc.edu>

Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit
X-Google-Thread: fc7ee,cb25a57c6462459b
X-Google-Attributes: gidfc7ee,public
X-Google-ArrivalTime: 1991-07-09 01:03:09 PST
Path: arc1-ca.pugleaf.net!gmdzi!unido!mcsun!uunet!elroy.jpl.nasa.gov!sdd.hp.com!hplabs!mayer
From: mayer@hplabs.hpl.hp.com (Niels Mayer)
Newsgroups: gnu.epoch.misc
Subject: Re: GWM vs Motif
Message-ID: <7088@hplabsz.hplabs.hpl.hp.com>
Date: 9 Jul 91 04:11:30 GMT
References: <9107011500.AA27407@a.cs.uiuc.edu> <PIERSON.91Jul1163832@xenna.encore.com> <1991Jul4.164307.8393@m.cs.uiuc.edu>
Reply-To: mayer@hplabs.hp.com (Niels Mayer)
Distribution: gnu
Organization: Hewlett-Packard Labs, Software & Systems Lab, Palo Alto, CA.
Lines: 154