Here's the description:
WM manages a collection of windows on a display terminal.
Each window has its own shell, running in parallel with those
in the other windows. This permits a user to conduct several
interactions in parallel, each in its own window. The user
can move from one window to another, re-position a window,
or create or delete a window at any time without losing his
or her place in any of the windows. Windows can overlap or
completely obscure one another; obscured windows can be
"lifted" up and placed on top of the other windows.
(Incidentally, apropos of the recent discussion of stdio
buffering, my program suffers whenever a program assumes that it
should behave differently when it is talking to a terminal from
when it is talking to a pipe, since all of WM's subprocesses are
connected to it by pipes, even though they are really talking to
interactive users. This means that programs that buffer stdout
to a pipe are sometimes clumsy, and screen editors are a complete
mess.)
I'll be happy to send my paper about WM and/or the code to anyone
who is interested. Send me a U.S. mail address for the paper;
send a tape for the programs themselves.
Rob Jacob
Code 7590
Naval Research Laboratory
Washington, D.C. 20375
jacob @ NRL-CSS