Dave Lawrence (12/30/88)
Thanks all; that was by far the best response I've had to a single question. Here is basically what I learned: Emacs Lisp and Common Lisp are about as related as man and monkeys. Darwin says that there is a common ancestor but things went their own ways from there. The common ancestor was MIT MACLisp. Emacs Lisp is dynamically scoped; Common Lisp is lexically scoped. This creates some rather large problems on a fundamental level as far as compatibility is concerned. Elisp doesn't have floating-point arithmetic. Some notable absences from Elisp (for my needs) are defstruct and setf. Cesar Quiroz wrote a Common Lisp library that is included in the standard distribution; an info file exists in $EMACS/etc/cl.texinfo. The library is in $EMACS/lisp/cl.el(c). It is not a complete library; many things are still lacking and there are a few syntax differences. Overall though the feel of Common Lisp is there and with it I do have access to defstruct and a functional setf. Documentation can be had a number of ways. An ex-Renssealer TA pointed me to a secretary in the computer-science department at RPI. (Random Housers' say hi Chip and yes, MTS just got put on the 3090 at the beginning of the week.) Doug Tiarks <doug@csd4.milw.wisc.edu> has informed me that: ]A pre-release version of the Emacs lisp manual can be gotten via ]anonymous ftp from a.cs.uiuc.edu:gnuemacs. It is not complete yet, ]but is far enough to be quite useful. It covers most of the available ]primitives. It is 300-400 pages and requires a TeX dvi filter for ]printing. I have heard that is is not usable under emacs info due to ]some extentions, but I have not tried it. One last way to get all of the on-line documentation of functions and primitives is to push the list returned by apropos through the documentation function. `(mapcar 'documentation (apropos ""))' was suggested by Bill Janssen at MCC Software. Note that it will keep Emacs busy for a couple of moments. I was going to use Elisp to write an adventure that would take advantage of a lot of editing features of GNU Emacs; right now it is a big debate because my basic structure requires a lot of property manipulation. It still is probably going to happen in Elisp, but now I know what to be prepared for. My alternatives are Kyoto Common or Franz and I know nothing about the latter, just that we have it. No one commented on it. And the Emacs name? Keith Gabryelski <elgar!ag@ucsd.edu>: ]Emacs was an ice-cream parlor around MIT where RMS (the original ]writer of ITS EMACS) hung out. EMACS use to be a set of macros in ]ITS TECO. It seems EMACS could also stand for Editor MACroS. ]The former I heard from a friend of RMS (LIZZY@AI). The latter from ]the ITS EMACS Manual. (Now I wonder what that ITS stands for ... seems as though we have an ITS (Information Technology Services) here and I bet it's not the one meant.) From _Lisp_, written by Patrick Winston with Berthold Horn at MIT, I discovered Stallman also wrote Gmacs sometime around 1979. On a reference page that mentions a lot of Lisp variants (I hadn't realized that there were so many; I thought there were around 6 or 7) Elisp is curiously absent, as is GNU in general. Considering how deeply involved GNU is with Lisp, I can only attribute this to the fact that the book is four years old. Thank you all for the information you provided. It has been very helpful and once again it just helped me learn even more neat stuff. Dave -- tale@rpitsmts.bitnet, tale%mts@rpitsgw.rpi.edu, tale@pawl.rpi.edu
saus@venera.isi.edu (Mark Sausville) (12/31/88)
ITS -- Incompatible Timesharing System. (Don't bother asking how I know this; I don't remember.) Mark. -- Mark Sausville saus@venera.isi.edu 213-822-1511 University of Southern California Information Sciences Institute 4676 Admiralty Way, Marina del Rey, California 90292
mike@ists.ists.ca (Mike Clarkson) (01/04/89)
In article <2211@imagine.PAWL.RPI.EDU>, Dave Lawrence writes: > Emacs Lisp is dynamically scoped; Common Lisp is lexically scoped. > This creates some rather large problems on a fundamental level as far > as compatibility is concerned. However, it shares much in common with Franz lisp in this regard. They are both direct MACLisp descendents. > Elisp doesn't have floating-point arithmetic. Some notable absences > from Elisp (for my needs) are defstruct and setf. Note that it doesn't even have 32-bit integers. > One last way to get all of the on-line documentation of functions and > primitives is to push the list returned by apropos through the > documentation function. `(mapcar 'documentation (apropos ""))' was > suggested by Bill Janssen at MCC Software. Note that it will keep > Emacs busy for a couple of moments. Except on a Cray, you may wish to revise moments to months :-) -- Mike Clarkson mike@ists.UUCP Institute for Space and Terrestrial Science mike@ists.ists.ca York University, North York, Ontario, uunet!mnetor!yunexus!ists!mike CANADA M3J 1P3 +1 (416) 736-5611
pf@csc.ti.com (Paul Fuqua) (01/06/89)
[Your mailer puts "Dave Lawrence" in your From field, making replies difficult. - pf] Date: Thursday, December 29, 1988 10:54pm (CST) From: Dave Lawrence Subject: GNU Elisp -- Summary And the Emacs name? Keith Gabryelski <elgar!ag@ucsd.edu>: ]Emacs was an ice-cream parlor around MIT where RMS (the original ]writer of ITS EMACS) hung out. EMACS use to be a set of macros in ]ITS TECO. It seems EMACS could also stand for Editor MACroS. ]The former I heard from a friend of RMS (LIZZY@AI). The latter from ]the ITS EMACS Manual. Emack and Bolios is a chain of ice cream parlors in the Boston area. The closest one to MIT is in Harvard Square. Don't go there, though, go to Toscanini's just off campus, or to Herrell's in Allston -- their ice cream is much better. There also used to be an ITS text formatter called Bolio. (Now I wonder what that ITS stands for ... seems as though we have an ITS (Information Technology Services) here and I bet it's not the one meant.) ITS is the Incompatible Timesharing System, an MIT operating system for DEC PDPs that started on a PDP-6 in 1966. MIT-AI and MIT-MC were PDP-10s running ITS. The name is a reaction to CTSS, the Compatible Time Sharing System, which ran on IBM 709s and 7094s at MIT from 1961 to 1973. While ITS has many good points, its user-interface is a lot like using adb as your login shell (the command-line interpreter is DDT, the debugger). However, some people prefer it to anything else, so it survives at MIT today on three KS-10s (2020s) and in modified form in LSI-11 gateway boxes. Paul Fuqua Texas Instruments Computer Science Center, Dallas, Texas CSNet: pf@csc.ti.com (ARPA too, sometimes) UUCP: {smu, texsun, cs.utexas.edu, rice}!ti-csl!pf
ron@ron.rutgers.edu (Ron Natalie) (01/06/89)
]Emacs was an ice-cream parlor around MIT where RMS (the original ]writer of ITS EMACS) hung out. EMACS use to be a set of macros in ]ITS TECO. It seems EMACS could also stand for Editor MACroS. ]The former I heard from a friend of RMS (LIZZY@AI). The latter from ]the ITS EMACS Manual. I'd discount the Ice Cream story. Liz Sommers (LIZZY@AI) certainly never said it. Youre last two statements are true. EMACS is a set of macros in TECO to do full screen editing. RMS wrote them. EMACS stands for Editor Macros. Later on several people including Warren Montgomery, James Gosling, and Jonathon Payne among others did their own implementations of EMACS for UNIX machines in C, not based on TECO. Later on after RMS felt burned by the commercial software industry, he started up GNU and did his own C EMACS. Oddly enough, this resmembled Goslign's UNIX version more than it did RMS's original ITS EMACS. -Ron
earl@wright.mips.com (Earl Killian) (01/07/89)
In article <Jan.5.18.29.33.1989.160@ron.rutgers.edu>, ron@ron (Ron Natalie) writes: >... >Later on after RMS felt burned by the commercial software industry, >he started up GNU and did his own C EMACS. Oddly enough, this >resmembled Goslign's UNIX version more than it did RMS's original ITS >EMACS. If you're talking about implementation, maybe. If you're talking about the user interface, no way! Gosmacs is painful to use for a user of the original Emacs, whereas GNU Emacs is a pleasure. --
wilkes@mips.COM (John Wilkes) (01/07/89)
[GNU emacs and Gosling emacs...] I heard somewhere that RMS started out with Gosling's PD emacs. Later, when Gosling's version became a commercial product, all of the Goscode was exorcised from the GNU version. This is probably an urban myth. -wilkes "There is no Editor but EMACS, and TECO is its Prophet." "I don't care what they say, 36 bits is here to stay." "It's a new feature? Gee, TOPS-20 did that 10 years ago." "etc., etc., etc." -- -- work: {decwrl ames pyramid prls}!mips!wilkes -OR- wilkes@mips.com
hedrick@geneva.rutgers.edu (Charles Hedrick) (01/07/89)
>I heard somewhere that RMS started out with Gosling's PD emacs.
Gnu Emacs was written from scratch. There are major differences in
design between it and Gosling's work. As far as I know, the only
exception is that a piece of the display code was based on Gosling's.
That code represented a very small part of the total Gnu Emacs. There
was reason to believe that certain versions of this code were public
domain, so I think RMS had used it in good faith. However enough
claims to the contrary were made that he decided to rewrite the
relevant code from scratch. Even after that rewrite, there were some
remaining similarities. However Unipress (who now have marketing
rights to Gosling's code) said they were satisified, and so the issue
dropped. (Indeed as far as I know, Unipress hadn't been one of the
complainers in the first place.)
I should note by the way that Gosling said that his Emacs is not and
never was public domain. There were various disputes as to the exact
status of various versions and pieces of it. But if you refer to it
as PD, you should at least realize that you are making a rather
dubious statement. Gnu is of course not public domain either, since
it is covered by the somewhat quixotic Gnu public license.