www-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

www/gnu rms-lisp.html


From: Therese Godefroy
Subject: www/gnu rms-lisp.html
Date: Wed, 1 Jul 2020 10:11:29 -0400 (EDT)

CVSROOT:        /webcvs/www
Module name:    www
Changes by:     Therese Godefroy <th_g> 20/07/01 10:11:29

Modified files:
        gnu            : rms-lisp.html 

Log message:
        Replace <acronym> with <abbr> & remove unnecessary occurrences.

CVSWeb URLs:
http://web.cvs.savannah.gnu.org/viewcvs/www/gnu/rms-lisp.html?cvsroot=www&r1=1.39&r2=1.40

Patches:
Index: rms-lisp.html
===================================================================
RCS file: /webcvs/www/www/gnu/rms-lisp.html,v
retrieving revision 1.39
retrieving revision 1.40
diff -u -b -r1.39 -r1.40
--- rms-lisp.html       12 Apr 2014 12:39:39 -0000      1.39
+++ rms-lisp.html       1 Jul 2020 14:11:29 -0000       1.40
@@ -57,10 +57,10 @@
 what it was.</p>
 
 <p>The original Emacs did not have Lisp in it. The lower level
-language, the non-interpreted language &mdash; was <abbr>PDP</abbr>-10
+language, the non-interpreted language &mdash; was PDP-10
 Assembler. The interpreter we wrote in that actually wasn't written
-for Emacs, it was written for <acronym title="Text Editor and
-COrrector">TECO</acronym>. It was our text editor, and was an
+for Emacs, it was written for <abbr title="Text Editor and
+COrrector">TECO</abbr>. It was our text editor, and was an
 extremely ugly programming language, as ugly as could possibly be. The
 reason was that it wasn't designed to be a programming language, it
 was designed to be an editor and command language. There were commands
@@ -81,12 +81,12 @@
 program big programs with, so we added code so they could have longer
 names. Actually, there were some rather sophisticated facilities; I
 think that Lisp got its unwind-protect facility
-from <acronym>TECO</acronym>.</p>
+from TECO.</p>
 
 <p>We started putting in rather sophisticated facilities, all with the
 ugliest syntax you could ever think of, and it worked &mdash; people were
 able to write large programs in it anyway. The obvious lesson was that
-a language like <acronym>TECO</acronym>, which wasn't designed to be a
+a language like TECO, which wasn't designed to be a
 programming language, was the wrong way to go. The language that you
 build your extensions on shouldn't be thought of as a programming
 language in afterthought; it should be designed as a programming
@@ -128,13 +128,13 @@
 whatever parts we felt we had to optimize. This was a technique that
 we had already consciously practiced in the original Emacs, because
 there were certain fairly high level features which we re-implemented
-in machine language, making them into <acronym>TECO</acronym>
-primitives. For instance, there was a <acronym>TECO</acronym>
+in machine language, making them into TECO
+primitives. For instance, there was a TECO
 primitive to fill a paragraph (actually, to do most of the work of
 filling a paragraph, because some of the less time-consuming parts of
-the job would be done at the higher level by a <acronym>TECO</acronym>
+the job would be done at the higher level by a TECO
 program). You could do the whole job by writing
-a <acronym>TECO</acronym> program, but that was too slow, so we
+a TECO program, but that was too slow, so we
 optimized it by putting part of it in machine language. We used the
 same idea here (in the hybrid technique), that most of the editor
 would be written in Lisp, but certain parts of it that had to run
@@ -154,9 +154,9 @@
 GosMacs. A strange thing happened with him. In the beginning, he
 seemed to be influenced by the same spirit of sharing and cooperation
 of the original Emacs. I first released the original Emacs to people
-at <abbr>MIT</abbr>. Someone wanted to port it to run on Twenex &mdash; it
+at MIT. Someone wanted to port it to run on Twenex &mdash; it
 originally only ran on the Incompatible Timesharing System we used
-at <abbr>MIT</abbr>. They ported it to Twenex, which meant that there
+at MIT. They ported it to Twenex, which meant that there
 were a few hundred installations around the world that could
 potentially use it. We started distributing it to them, with the rule
 that &ldquo;you had to send back all of your improvements&rdquo; so we
@@ -202,10 +202,10 @@
 modern sense of the term &mdash; it was part of an explicit political
 campaign to make software free. The essence of this campaign was that
 everybody should be free to do the things we did in the old days
-at <abbr>MIT</abbr>, working together on software and working with
+at MIT>, working together on software and working with
 whomever wanted to work with us.  That is the basis for the free
 software movement &mdash; the experience I had, the life that I've lived at
-the <abbr>MIT</abbr> AI lab &mdash; to be working on human knowledge, and
+the MIT AI lab &mdash; to be working on human knowledge, and
 not be standing in the way of anybody's further using and further
 disseminating human knowledge.</p>
 
@@ -274,29 +274,29 @@
 in our lab.  The abandonment happened when Symbolics hired away all
 the hackers, except me and the few who worked at LMI part-time. Then
 they invoked a rule and eliminated people who worked part-time
-for <abbr>MIT</abbr>, so they had to leave entirely, which left only
-me. The AI lab was now helpless.  And <abbr>MIT</abbr> had made a very
+for MIT, so they had to leave entirely, which left only
+me. The AI lab was now helpless.  And MIT had made a very
 foolish arrangement with these two companies.  It was a three-way
 contract where both companies licensed the use of Lisp machine system
-sources. These companies were required to let <abbr>MIT</abbr> use
-their changes. But it didn't say in the contract that <abbr>MIT</abbr>
-was entitled to put them into the <abbr>MIT</abbr> Lisp machine
+sources. These companies were required to let MIT use
+their changes. But it didn't say in the contract that MIT
+was entitled to put them into the MIT Lisp machine
 systems that both companies had licensed. Nobody had envisioned that
 the AI lab's hacker group would be wiped out, but it was.</p>
 
 <p> So Symbolics came up with a plan <a href="#foot-4">(4)</a>.  They
 said to the lab, &ldquo;We will continue making our changes to the
 system available for you to use, but you can't put it into
-the <abbr>MIT</abbr> Lisp machine system. Instead, we'll give you
+the MIT Lisp machine system. Instead, we'll give you
 access to Symbolics' Lisp machine system, and you can run it, but
 that's all you can do.&rdquo;</p>
 
 <p>This, in effect, meant that they demanded that we had to choose a
-side, and use either the <abbr>MIT</abbr> version of the system or the
+side, and use either the MIT version of the system or the
 Symbolics version.  Whichever choice we made determined which system
 our improvements went to. If we worked on and improved the Symbolics
 version, we would be supporting Symbolics alone. If we used and
-improved the <abbr>MIT</abbr> version of the system, we would be doing
+improved the MIT version of the system, we would be doing
 work available to both companies, but Symbolics saw that we would be
 supporting LMI because we would be helping them continue to exist. So
 we were not allowed to be neutral anymore.</p>
@@ -326,9 +326,9 @@
 others had wiped out.</p>
 
 <p>The Lisp community in the 70s was not limited to
-the <abbr>MIT</abbr> AI Lab, and the hackers were not all
-at <abbr>MIT</abbr>. The war that Symbolics started was what wiped
-out <abbr>MIT</abbr>, but there were other events going on then. There
+the MIT AI Lab, and the hackers were not all
+at MIT. The war that Symbolics started was what wiped
+out MIT, but there were other events going on then. There
 were people giving up on cooperation, and together this wiped out the
 community and there wasn't much left.</p>
 
@@ -388,18 +388,18 @@
 a programming language to write a lot of it in to make it easily
 extensible, like the editor. The question was what it should be.</p>
 
-<p>At the time, <acronym title="Tool Command Language">TCL</acronym>
+<p>At the time, <abbr title="Tool Command Language">TCL</abbr>
 was being pushed heavily for this purpose. I had a very low opinion
-of <acronym>TCL</acronym>, basically because it wasn't Lisp. It looks
+of TCL, basically because it wasn't Lisp. It looks
 a tiny bit like Lisp, but semantically it isn't, and it's not as
 clean.  Then someone showed me an ad where Sun was trying to hire
-somebody to work on <acronym>TCL</acronym> to make it the
+somebody to work on TCL to make it the
 &ldquo;de-facto standard extension language&rdquo; of the world. And I
 thought, &ldquo;We've got to stop that from happening.&rdquo; So we
 started to make Scheme the standard extensibility language for
 GNU. Not Common Lisp, because it was too large. The idea was that we
 would have a Scheme interpreter designed to be linked into
-applications in the same way <acronym>TCL</acronym> was linked into
+applications in the same way TCL was linked into
 applications. We would then recommend that as the preferred
 extensibility package for all GNU programs.</p>
 
@@ -407,12 +407,12 @@
 powerful language as a version of Lisp as your primary extensibility
 language.  You can implement other languages by translating them into
 your primary language. If your primary language
-is <acronym>TCL</acronym>, you can't very easily implement Lisp by
-translating it into <acronym>TCL</acronym>. But if your primary
+is TCL, you can't very easily implement Lisp by
+translating it into TCL. But if your primary
 language is Lisp, it's not that hard to implement other things by
 translating them. Our idea was that if each extensible application
 supported Scheme, you could write an implementation
-of <acronym>TCL</acronym> or Python or Perl in Scheme that translates
+of TCL or Python or Perl in Scheme that translates
 that program into Scheme. Then you could load that into any
 application and customize it in your favorite language and it would
 work with other customizations as well.</p>
@@ -583,7 +583,7 @@
 
 <p class="unprintable">Updated:
 <!-- timestamp start -->
-$Date: 2014/04/12 12:39:39 $
+$Date: 2020/07/01 14:11:29 $
 <!-- timestamp end -->
 </p>
 </div>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]