sommar@enea.se (Erland Sommarskog) (04/01/91)
Also sprach Douglas E. Quale (quale@saavik.cs.wisc.edu):
>Emacs is written in elisp.
I did
cat *.c *.h | wc
on /usr/gnu/src/emacs/src and found almost 70.000 lines. If it's
not Emacs, what is it? TPU? :-)
cat *.el | wc on /usr/gnu/src/emacs/lisp revealed 55.000 lines.
However, are any of these 55.000 lines are linked into /usr/gnu/
bin/emacs? How many are really kernel-emacs, and how many are
just the editing interface, and special-packages like electric-c?
--
Erland Sommarskog - ENEA Data, Stockholm - sommar@enea.se
barmar@think.com (Barry Margolin) (04/02/91)
In article <3114@enea.se> sommar@enea.se (Erland Sommarskog) writes: >cat *.el | wc on /usr/gnu/src/emacs/lisp revealed 55.000 lines. >However, are any of these 55.000 lines are linked into /usr/gnu/ >bin/emacs? Many of those files are loaded prior to unexec'ing bin/emacs. I don't know how many, though; you could probably determine this by looking at the makefile or build script. > How many are really kernel-emacs, and how many are >just the editing interface, and special-packages like electric-c? I guess the problem is that there is no clear agreement on what is "kernel-emacs". To me, part of the definition of Emacs is that the default binding of meta-B (for instance) is to move the cursor backward by a word; i.e. I consider the simple word motion commands to be part of the Emacs kernel. In GNU Emacs, backward-word is written in Elisp. I also find your reference to "*just* the editing interface" curious. Emacs is primarily an editor, so the editing interface is an important part of it. For sure, Emacs is flexible enough that extension packages can bypass the normal editing interface if they need to, but that doesn't mean that the normal editing interface isn't part of Emacs. If GNU Emacs isn't written in Lisp, then PDP-10 EMACS wasn't written in TECO. All the display management and interactive keyboard dispatching was built into TECO itself, and EMACS was simply a bunch of TECO macros which were stored into the keyboard dispatch table. But these macros are themselves the difference between TECO and EMACS. -- Barry Margolin, Thinking Machines Corp. barmar@think.com {uunet,harvard}!think!barmar
sommar@enea.se (Erland Sommarskog) (04/07/91)
Also sprach Barry Margolin (barmar@think.com): >I also find your reference to "*just* the editing interface" curious. >Emacs is primarily an editor, so the editing interface is an important part >of it. I am not surprised by your comment. I mainly live in the VMS world with TPU which makes a clear distinction between TPU itself on the one hand which provides you the tools to write the editing interface and tis interface on the other. TPU includes a set of built-ins, a set of types (integers, buffer, windows, pattern etc.), redrawing algorithms and not the least a compiler to compile code in the specific VAXTPU language in which you implement the editing interface, which for instance provide all key bindings. If you start up TPU without neither a section file (compiled VAXTPU) nor a command file (interpreted VAXTPU) all you get is a blank screen, and CTRL/Y is the only way out. The standard editing interface as delivered with VMS is EVE, but if you like you write your completely own editing interface, and being somewhat crazy I have done this. >I guess the problem is that there is no clear agreement on what is >"kernel-emacs". To me, part of the definition of Emacs is that the default >binding of meta-B (for instance) is to move the cursor backward by a word; >i.e. I consider the simple word motion commands to be part of the Emacs >kernel. In GNU Emacs, backward-word is written in Elisp. Emacs is much fuzzier than TPU, and I would presume that there is a lot of Lisp code loaded as I write these words (I'm do news on Unix) which I don't use. Like backward-word for instance. I have such a function in my editor interface, but since I don't agree with Stallman on how it should work I have written my own. (My TPU and Emacs interfaces are roughly equivalent.) -- Erland Sommarskog - ENEA Data, Stockholm - sommar@enea.se Le fils de maire est en Normandie avec beaucoup de medecins.