ビル・ゲイツ初期の経歴を再検証 --- Part12
・Altair向けBasicは実機なしで動作したが、何か特別なコツでもあったのか
既に述べましたように、ビル・ゲイツとポール・アレンの作成したAltair向けBasicは、実機がない状態で作られたにも関わらず、動作しました。
このような離れ業が成功したということは、何か特別なコツでもあったのでしょうか。
P126:ビルは不安になったようだった。たとえば、私の書いたマクロアセンブラに何か誤りがあったらどうするのか、というのだ。8080の命令に対応できるように作ったというけれど、そのコードに少しでも間違いがあったらどうなってしまうのか。
と書いてあり、ビル・ゲイツも同様な思いを持っていたようです。
P126:ビルは寝ずに8080のマニュアルを調べ、何時間もかけて私の書いたマクロの再チェックをした。
と書いてあります。
そう、特別なコツなどなかったのです。
じっくりとチェックする、ただそれだけです。
でも、冷静に考えれば、当時の彼らにとってそれしか手段がなかったのは納得できる話です。
それでも、仕様書だけということは、
・仕様書に間違いがある
・実機が仕様書通りでない
という、彼らがどんなに努力しても克服できない問題もあるはずです。
むしろ、そういうことがあるのが普通でしょう。
そういうことが発生せずに動作したというのは、最終的には幸運であったというしかないと思います。
・なぜ、BASICに浮動小数点数計算機能などを入れたのか
これには多少の説明が必要かもしれません。
P119: 一つ困ったのは、BASICの中でも特に重要な部分の作り方が明確にわからなかったことだ。浮動小数点演算に関係するコードである。
P119: ある晩、ビルと私はカリアハウスのカフェテリアで夕食を食べていた。
P119:私が、「数学関数を自分で全部書けるかどうか不安だ」というようなことを話していたら、そばにいた癖毛の一年生が急に割り込んできた。「PDP-8でなら、それ、やったことあるよ」と言うではないか。
P120: それがモンテ・ダビドフとの出会いだった
P120: モンテの加入で不安は解消された。
と書かれています。
しかし、この時点で浮動小数点数の演算機能など必要でしょうか。
私が彼らの立場なら、とりあえず最小限度の機能で作ってデモを見せようと思うでしょう。
なんせ、実機がなく、仕様書で作っているわけですから、余計なコードを入れれば、動かなくなるリスクが高まります。
「ぼくとビル・ゲイツとマイクロソフト」には、この疑問に対する答えは見当たりません。
PDP-10についてくるBASICには浮動小数点数の演算機能があったので、それを再現しないとまともなBASICとは言えないと考えたのかもしれません。
前回へ 次回へ