LispとエディタといえばEmacsですが、Emacsは熟練しないと使い熟せないとか、EmacsばかりがLispエディタじゃない!等の話はよく耳にします。

といっても、そんな話にそれ以上の考察もなく同じ所をぐるぐる廻っているだけ、という感じがしていました。

そこで一つLispとエディタの関係について調べて考察してみようかなと思った次第です。

まず、最初のLispといえば、LISP 1.5ですが、どうもバッチ方式のようです。

print 以外に punch なんて関数もあったりしますのでパンチカードでの入出力は標準だった様子。

LISP 1.5をIBM 7094のエミュレータで動かしてみた感じでもそんな感じですが、IBM 7094ので主に使われたエディタってなんなんでしょうね。

初の対話式Lispとなると、どうも当時17歳のL Peter Deutsch氏が開発したPDP-1 Lispのようです。

BASICも1964年あたりですが、対話式プログラミング環境としては最初の一つなのかもしれません。

PDP-1で利用されたエディタですが、Daniel L. Murphy氏が開発したTECOだと思われます。

TECOは、Emacsの先祖として有名ですが、Unix方面でいうと、edの先祖のqedの元になったものがtecoなので、Emacsもviも元はtecoともいえます。

このtecoで1964年あたりにLispの編集支援機能が作られていたかどうかはちょっと分かりませんでした。

今から46年前の1969年9月24日のMacLISPの開発ニュースによれば、

THE S-EXPRESSION EDITING SYSTEM OF TOM BINFORD IS

NOW A REGULAR PART OF THE SYSTEM. A MEMO SHOULD BE

COMING OUT SOON ON ITS USE; IT IS VERY MUCH LIKE

USING TECO WHILE IN LISP.