その意味では「作り直された」もので、資料性は落ちますが、検索性が上がっていて便利。手間をかけて配布しているのは、C言語作者のデニス・リッチーです。実は、恨み節を述べるために手間をかけてまで配布している節がある。ところで、デニスが持っているのとは別のバージョンを、ドイツのクライネさんも公開しています。こちらはスキャンしたそのままです。デニスもクライネも、完全なバージョンを持っていたわけではなく、一部ページが欠落しています。この2つを合わせることで、ほぼ完全な内容がわかります。デニスによれば、興味深いことにこの2つの資料は、別のタイプライターで印刷されたものだそうです。書いてある内容はほぼ同じなのに、文字サイズが違うためにページ割が違う、とのこと。当時は紙テープにタイプ内容を記録し、同じ内容を何度でも印字することができました。紙テープに互換性のある別のタイプで印刷が行われたのでしょう。配布ページでは、デニスの思い出話も書いてあります。作者のマーティン・リチャーズに対して恨み節を述べています。デニスは、ブロックを示す文法について、こう言います。使って例を示すことがある。そのサンプルプログラムがあります。デニスは、これを「Cの影響を受け、後から改竄したのだ」と断じています。最初に使った言語」という手柄を横取りしようとしているのだ、と言っているように思います。いう言語を知りません。名前は知っているけど、使ったことはない。「事務処理言語」として必要な機能を持たせようとした結果、非常に巨大になってしまって実用性を失ってしまった言語、のようです。作者は、ケンブリッジ大学のクリストファー・ストレイチー。世界初の「マクロ言語」を開発した人でもあります。この「マクロ言語」は、コンパイラの前段階として、テキストを置換する簡単な処理をするもの。話で、このマクロ言語のことを書いています。マクロ言語は、コンパイラに、簡単な置換を行うフィルタを組み合わせるだけで、ずっとプログラムが幅広いものになる、と示すものでした。呼ばれるコンピューターで実装されました。いう名前で市販されたコンピューターのプロトタイプ機(1962)。リンク先の写真に、テレタイプ端末が写っています。ないかと思うのですが、型番特定には至っていません。この端末では、§(セクション)記号が使えたそうです。使えた、と証言しています。追記これ、少し違うようです。別記事にまとめました。§は「表記できたけど、入力できたわけではない」。使えたという証言も、表記できたことを言っているか、直接タイプ出来たように記憶違いしているのでしょう。文法では、この記号でブロックを示します。ブロックとは、つまりセクションです。この記号で示すのは、わかりやすいように思います。ちなみに、セクションの終了は、記号の上に縦棒を重ね打ちして、「打消し」つまり終了を表現します。簡略化して、現実的に実装できるようにしたもの。訪問した際に実装(1967)したもの、だそうです。簡略化しようとしていたのだから、おそらくはストレイチーの示唆があったのかと思います。言語の処理を3段階に分け、移植性に考慮しています。記述され、どのコンピューターにも簡単に移植できました。コンパイラが生成するのは、中間コードでした。この中間コードを実際のコンピューターの命令に変換するには、コンバーターが必要となります。ここは移植ではなく、機種ごとに作らないといけない部分。コンパイラを作るよりは簡単でした。コンパイル前に簡単な文字列置換を行う、「プリプロセッサ」と名付けられた処理が存在していました。作ったストレイチーの「マクロ言語」のように、コンパイル前に文字列置換を行うのです。プリプロセッサは、固定された動きしかしなかったようで、マクロ言語としては使用できません。何をするのかと言えば、機種ごとに異なる「記号」を変換し、言語本来の表現に変換するためのものでした。コンパイラは、一切の記号・英小文字を必要としませんでした。変換され、そのあとでコンパイルされます。これは、当時のどんなテレタイプでも扱えることを意味します。マニュアルに明記されていました。