[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Symbolics & Sun-3 + Lucid Dev Envs
Date: Sat 23 May 87 01:44:19-CDT
From: Bob Boyer <AI.BOYER@MCC.COM>
The reason is
that I run almost all my Unix processes, including Lisp, in
"shell mode," which makes all the IO go through an Emacs
buffer, where the IO can be picked up with the usual Emacs
editing commands and moved to other buffers with the
greatest of ease.
I see. So the different processes can communicate data by using Emacs
buffers. In a sense, the Emacs buffer is addressible by all of them,
and sort of acts as a "shared address space" in a crude way. I wonder
how easy it is to write programs that can use this communications
mechanism? I wonder how easy it is to pass interesting data structures
through this mechanism?
For example, suppose you wanted to have the equivalent of the Symbolics
compiler warnings database, where the system keeps track of which
compiler-detected problems have been fixed, and which have not? This
requires communication between the compiler and the editor.
Or suppose you want to write your own application that runs in multiple
processes, and the two processes want to communicate? For example, you
might want to set up a procedure to be triggered by a timer, and wake up
and examine or modify the data structures of an application. There are
plenty of examples of this in our programming environment and in user
applications.
This is one reason that we feel a shared address space (or, more
properly, "shared object-oriented address space", since you really only
address objects, never numerical locations (that is, you never worry
about whether two objects are contiguous, or which is at a higher
address, etc)) is a fundamental underlying requirement for a high
quality Lisp programming environment.