先日、「今日は何の日?」として、ビル・ジョイの誕生日の記事を書きました。
この記事中に「vi は世界初のスクリーンエディタ」と書いたのですが、これに関して「vi より CP/M の word master の方が先では?」という指摘をいただきました。
調べたのですが、どちらが先とするか微妙なところです。
僕は「vi が世界初と呼ぶことに差しさわりはない」と判断したので、ビル・ジョイの記事は修正していませんが、これも考え方によるでしょう。
判断は各自にお任せするとして、調査報告と、僕が「vi が最初と呼んでよい」と考えた道筋を記しておきます。
ビル・ジョイが UNIX の標準エディタ(ラインエディタ)である ed を改造し、ex を開発したのが 1976年。
この時点で、ex はラインエディタでありながら、「ビジュアルモード」という名称でスクリーンエディタの機能を持ちます。
(1977年の ex 1.1 のマニュアルでは、名目上はラインエディタだが、full-screen addressible cursors という記述があり、すでにスクリーンエディット可能になっている。)
これが BSD UNIX として一般配布されたのが 1978年3月でした。
そして、ビジュアルモードが標準の起動モードとなった vi の公開は、次の BSD 配布である 1979年3月。
vi は、実のところ ex の名前を変えただけです。
UNIX では、一つのファイルにいくつもの名前を付けることができました。そして、vi は起動される名前によって動作が変わります。(UNIX ではよくあることです)
vi として起動すればビジュアルモードで起動し、ex として起動すれば、従来通りラインエディタとして使えます。
ここまでは、基本的に先日書いた通り。
(調べて判ったことを少し追記していますが)
一方、CP/M というOSにはラインエディタ ED が付属していましたが、これを改良した人がいて、word master というエディタになります。
このエディタは、MicroPro という会社から1976年には発売されていた、という記述が多数あります。
ex も word master も開発月がわからないのですが、1976年時点で ex は公開されていません。逆に、word master が発売されているのであれば、word masetr が先で、ex が「真似をした」可能性があります。
でも、この記述ちょっとおかしい…?
CP/M は、8080 用のOSで、当時インテルで働いていた人物によって作られています。
そのため、8080 発売(1974年末)の時点でもう完成していました。そう考えると、1976年にソフトが発売されてもおかしく無いように見えます。
彼は余暇で CP/M を作り、インテルに売り込みます。しかし、インテルは買い取りませんでした。
(一緒に作った PL/M というコンパイラ言語は買ってくれました)
つまり、CP/M は完成しているものの、まだどこにも発表されていません。
その後、8080 を搭載した最初のコンピューターであるアルテア8800が 1975年1月に発表されます。実際には出荷が遅れまくり、入手できない幻のマシンでした。
現実的に入手可能になるのは、アルテア互換の IMSAI 8080 。これが 1975年末。
これを受けて、CP/M 作者は会社を設立、1976 年に IMSAI 8080 を作った IMSAI 社と契約を結び、IMSAI 用 CP/M を発売します。CP/M は、ここでやっと世間に公表されます。
しかし、利用するには IMSAI にキーボードとディスプレイ、さらにフロッピーディスクドライブを接続する必要があり、これは非常に高価なシステムでした。
この時点では CP/M は全然普及していません。なので、word master が発売された、と言うのはおかしいのです。
最初からキーボードもディスプレイ出力もついている TRS-80 にフロッピーディスクドライブが発売されるのが 1978年。
CP/M は、8bit 機を発売する各社と契約し、各社のマシン用に移植されています。このころからやっと、CP/M は普及し始めます。
そして、この頃にはコンピューターソフトの市場が出来上がったために多くのソフト会社ができます。MicroPro もそうした会社で、1978年設立。共同設立者の一人は、word master を開発した人です。
…つまり、word master を販売するために作った会社なのですね。
どうも、「word master は 1976年発売」という情報がどこかにあり、間違いがそのまま広まっているようです。発売会社無しに発売はできませんから、1978年以降、と言うのが正しいでしょう。
そのつもりで情報を調べると、word master は 1978 年発売、と言う情報も、数は少ないものの見つかります。
恐らくは、こちらが事実です。
さて、もう一度確認すれば、vi の公開は 1979年3月です。ただし、先に書いた通り、これは ex の名前を変えただけ。ex の配布は 1978年3月ですが、1976年から開発されており、1977年11月時点でスクリーンエディットモードの存在に触れたマニュアルが残っています。
なので、「vi は世界初のスクリーンエディタ」とは言えないのですが、「ex 時代を含めると世界初のスクリーンエディタ」ではあります。
プログラムは同じ(バージョンアップはしている)だけど名前が変わった、というのをどう考えるか…人によって考えは異なるでしょう。
僕としては、vi が世界初と言う認識で間違いはないと考えたため、ビル・ジョイの誕生日の本文は修正しませんでした。
ただ、word master が真似をした、というわけではないような気がします。
独立して作られたもので、こちらも世界初と呼んで差しさわりのないもの。
少なくとも、家庭用パソコンとしては最初のスクリーンエディタです。
ex が配布された BSD では、UNIX に移植された Pascal 言語のパッケージが入っていたそうです。
この移植はビル・ジョイによるもので、ex は「プログラム作成に便利なように ed を改造したもの」として、Pascal 移植の際に作られたのだとか。
そのため、ex も「Pascal のおまけ」として配布されています。
エディタとしての配布ではないので、ほとんど気づかれていません。翌年 vi が配布されるまで、みな「スクリーンエディット」なんて概念を知らないままなのです。
その間に発表されている word master に影響を与えていることはおそらくないでしょう。
証拠と言うことでもありませんが、word master と vi ではキーの使い方も全然違います。
vi では、カーソルを動かすのにホームポジションで押しやすい位置にあるキー… h j k l を使います。
このキーが通常に文字を入力するのではないことを示すため、「モード」を切り替える必要もあります。
word master では CTRL を押しながら e s d x を押します。いわゆる「ダイヤモンドカーソル」です。
CTRL キーの併用により、モードは存在しません。
#スクリーンエディタが作られる前は、当然のことながらスクリーンエディタが存在しなかったことに留意。
カーソルを動かしてエディット、という概念がないので、カーソルキーは存在しない。
word master はエディタから進化してワープロになり、word star と言う名前で同じ会社から発売されます。
キー操作はほとんど同じでした。
word star は爆発的に普及し、同じキー操作のエディタ/ワープロを大量に作り出します。
日本では MIFES が同じキー操作を利用していました。
一方 vi は今でも根強いファンがいるものの、広範に普及したとは言い難い状況です。
後の世に与えた影響でいえば、word master のほうが大きかった、と言えるでしょう。
これが、word master も世界初と呼んで差しさわりないと考える理由です。
同じテーマの日記(最近の一覧)
関連ページ
アラン・シュガートの誕生日(1930)【日記 14/09/27】
BSD 初リリース日 (1978)【日記 17/03/09】
別年同日の日記
申し訳ありませんが、現在意見投稿をできない状態にしています。 【あきよし】 情報ありがとうございます。O26 というのは知りませんでした。これは、調べてみたら面白そう…。何かわかったら、また記事にします。 (2014-08-05 07:33:16)【名無し】 Wikipediaのテキストエディタの項目(http://en.wikipedia.org/wiki/Text_editor)を見ると「One of the earliest full-screen editors was O26, which was written for the operator console of the CDC 6000 series computers in 1967.」とあり、O26の項目(http://en.wikipedia.org/wiki/O26_(text_editor))にもう少し詳しいことが書かれていますが、1970年代半ばのWordMasterやviが世界初のスクリーンエディタである可能性は低いんじゃないでしょうか。 (2014-08-01 10:00:06) |