Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!mnetor!uunet!husc6!rutgers!topaz.rutgers.edu!gort.rutgers.edu!fawcett
From: fawcett@gort.rutgers.edu (Tom Fawcett)
Newsgroups: comp.lang.lisp
Subject: Re: lisp environments summary
Message-ID: <653@gort.rutgers.edu>
Date: Tue, 8-Dec-87 11:52:25 EST
Article-I.D.: gort.653
Posted: Tue Dec  8 11:52:25 1987
Date-Received: Sun, 13-Dec-87 11:44:40 EST
References: <613@umbc3.UMD.EDU> <325@siemens.UUCP>
Organization: Rutgers Univ., New Brunswick, N.J.
Lines: 45
In-reply-to: steve@siemens.UUCP's message of 7 Dec 87 14:46:13 GMT

Posting-Front-End: GNU Emacs 18.47.23 of Wed Sep  2 1987 on gort.rutgers.edu (berkeley-unix)


In article <325@siemens.UUCP> steve@siemens.UUCP (Steve Clark) writes:

     The correct way to deal with files and storing your lisp code is
     essentially the way Interlisp does it.

Spoken as if opinion were fact.

     You edit your functions
     in Lisp, and when you want to save them you write them out to files.
     Furthermore, a file is treated as a database of definitions - function
     definitions, record definitions, data definitions, etc. etc., and the
     system keeps track of what you change and where it belongs and lets you
     know what files need to be rewritten.  (This is the equivalent to Unix
     "make" for a system where you edit things "in core".)

The Symbolics/Explorer/Common Lisp view of files also supports these things,
only in a different way.  The D-machine way is to require that all changes
and manipulations of code be done through Interlisp (rather than in a text
editor), and in that way it is, as you say, like a database system for code.
The Symbolics/Explorer approach is to give you a powerful set of tools
linking the text editor to the lisp environment.  


     Unfortunately, CL has the wrong idea of files & editing somewhat wired
     into it. 

As I've said: different, not wrong.  Speaking as someone who has worked with
both D-machines and Symbolics machines, there are very definite drawbacks to
the D-machine point of view.  The problems come when you try to do anything
even slightly unusual.  The D-machine facilities *require* that you do all
file/code manipulations through them; if you ever want to do something out
of the ordinary, you have quite a hassle, which is exacerbated because all
the utilities talk to one another.  With the Symbolics/Explorer approach it
usually isn't as bad, because the system doesn't demand that you do all
operations in a fixed way.

I should point out that these differences are the result of different
fundamental philosophies.  Xerox D-machines have a tradition (from
Interlisp-10) of being a complete lisp environment: everything you do should
be done from inside the Interlisp system.  The Symbolics/Explorer/Common
Lisp systems come from an opposite tradition, of having a lisp environment
and several external tools, one of which is a text editor.  Which you prefer
is simply a matter of choice.  However, it seems that Common Lisp has
adopted the Symbolics/Explorer paradigm, so chances are that it will
eventually dominate.