第2部 第5章 人ひとりのコンピュータは大型の亜流にあらず |
1980 もう1人の電子少年の復活 |
ベーシックのいくつもの選択肢
富田倫生
2010/6/24
本連載を初めて読む人へ:先行き不透明な時代をITエンジニアとして生き抜くためには、何が必要なのでしょうか。それを学ぶ1つの手段として、わたしたちはIT業界で活躍してきた人々の偉業を知ることが有効だと考えます。本連載では、日本のパソコン業界黎明期に活躍したさまざまなヒーローを取り上げています。普段は触れる機会の少ない日本のIT業界の歴史を知り、より誇りを持って仕事に取り組む一助としていただければ幸いです。(編集部) |
本連載は『パソコン創世記』の著者である富田倫生氏の許可を得て公開しています。「青空文庫」版のテキストファイル(2003年1月16日最終更新)が底本です。「青空文庫収録ファイルの取り扱い規準」に則り、表記の一部を@ITの校正ルールに沿って直しています。例)全角英数字⇒半角英数字、コンピューター⇒コンピュータ など |
ピットマンは開発済みのタイニーベーシックをもとに、6800用に3種類、6502用に3種類のバージョンを用意して注文に応じる体制をとった。ところがユーザーからの注文によって、彼はすぐにもう1つのバージョンを用意せざるをえなくなった。さらにサポートを求められながら対応できないでいるものが、主だったものでも6800と6502を使ったマシンで合わせて4つあった。
エンジニアライフ コラムニスト募集中! |
あなたも@ITでコラムを書いてみないか 自分のスキル・キャリアの棚卸し、勉強会のレポート、 プロとしてのアドバイス……書くことは無限にある! コードもコラムも書けるエンジニアになりたい挑戦者からの応募、絶賛受付中 |
6800なら6800という同じマイクロコンピュータを使ったマシンでも、どういった機能をメモリーのどの領域に割り振るかによっては、プログラムの書き方を変えざるをえなかった。こうしたメモリー内の領域の配置は、基本ソフトのモニターが受け持つが、この作りは各社でばらばらになっていた。ピットマン自身は、直接は関与していないものの、8080やZ80の状況がさらに深刻なことは目に見えていた。もしもこうした事態がこのまま進んでいけば、ちっぽけコンピュータ社は、新しく生まれてくるマシンに合わせてえんえんと手直しの作業を続けるか、特定の機種だけを相手にして自ら市場を制限するか、それともOEMへの転向でも試みる以外なくなるとピットマンは考えた。
ビル・ゲイツはホビイストへの公開状を書いたが、ピットマンにはむしろ警告を与えるべき相手はハードウェアのベンダに思えた。
ソフトウェアの空白を健全で有用な形で埋めていくためには、独立系のソフトウェアベンダを成り立たせるのが近道ではないか。ただしハードウェアのメーカーが、このままプログラム開発上の都合を無視して勝手気ままにマシンを設計していたのでは、我々はソフトウェアの手直しに忙殺されてしまう。そう説き起こしたピットマンは、プログラムの互換性を高めるうえで遵守してもらいたい設計上の要求項目をリストアップした「メーカーへの公開状」をまとめ、『DDJ』のジム・ウォーレンに掲載を依頼した。
ピットマンは公開状の中で、『DDJ』が旗振り役となっているホビイストによるソフトウェアの自主開発と交換も、かけ声倒れに終わってきていると批判していた。ホビイストがホビイストである限り、つまり趣味としてソフトウェアを書いている限り、自分以外の人が使って役に立つようなものはなかなか書きえない。誰でも使えるようなソフトウェアを書くための技量を身につけ、十分な時間を作業に投入することは、ホビイストには難しいとピットマンは主張した。
自分たちの耳にも痛かったものの、ソフトウェアのビジネスを健全に育てようとする立場からさまざまな要素に目を配ったピットマンの主張に、ウォーレンは説得力を感じた。明確な指針を示してメーカーに協力を求めるとともに、こうしたガイドラインからはずれる製品は購入しないことでユーザーもまた好循環を生み出すことに貢献できるとの論旨は、じつに明快だった。1月の半ばにピットマンの原稿を受け取ったウォーレンは、1977年2月号の巻頭を長文の公開状で飾った。
ピットマンのこうした試みによって、6800用のタイニーベーシックはちっぽけコンピュータ社が5ドルで販売しているものが主流となり、公開されたものは存在しない状態が続くことになった。
タイニーベーシックのオリジナル開発を決意した安田寿明は、この空白を埋めようと考えた。
学生たちとの話し合いの中で、安田はオリジナル開発にあたっての目標を2つ設定した。1つは可能な限り速いものを書くこと。そしてもう1つが初心者にとって取っつきやすいものとする一方で、経験者にも飽きさせないという、相反しかねない課題を達成することだった。
ピットマンのものに対する性能面での不満は、もっぱら遅いことに集中していた。そこで6800で実現可能な最高速を目指すという目標をかかげたが、これを達成しようとする以上、すでにあるものを逆アセンブルして参考にしようとしてもあまり意味はなかった。パロアルト版を書いたリチェン・ワンのもう1つの傑作、タイニートレックをそのまま走らせて遊びたいという切実な動機もあり、パロアルト版や東大版に文法は合わせたが、中身は一から書き起こすことになった。
さらに開発の手法にも、安田はひと工夫を凝らした。インタープリターに盛り込む機能ごとにごく小さなモジュールをアセンブラーで書き、この単位で動かしてみてバグを取った。最終的にモジュールを接続して1つにまとめる作業には、大型機のクロスアセンブラーを使った。こうしたモジュール化した開発手法をとったことで、作業の効率をかなり高めることができた。
プログラムを短く仕上げるという観点から、パロアルト版や東大版では命令を頭文字とピリオドで略記できるようになっていた。だが初心者にとってプログラムを読みやすくするうえでは極端な省略はじゃまになると考えて、略記は最低限にした。その一方で機能はタイニーベーシックとしては多めに盛り込み、バグを見つけだすための仕掛けも充実させて、経験者にも歯ごたえのあるものとするよう努めた。
こうした方針に沿って、1カ月の突貫工事で進められた開発作業の中心となったのは、電気通信工学科4年の畑中文明だった。以前から畑中のソフトウェアのセンスに注目していた安田は、タイニーベーシックの開発にあたってあらためてすさまじい彼の集中力と切れ味の鋭さに印象づけられた。目標とした高速性と使いやすさに関しては、既存のタイニーベーシックを凌駕したと自負できた。
1978(昭和53)年4月に講談社のブルーバックスから出した『マイ・コンピュータを使う』に、安田は電大版タイニーベーシックの機械語リストと文法の概要を掲載し、さらに『bit』の同年8月号にアセンブラーのソースコードを載せて全面的な公開を行った。
こうしたさまざまな人たちの努力によって、ベーシックにはいくつもの選択肢が生まれていた。
» @IT自分戦略研究所 トップページへ |
@IT自分戦略研究所は2014年2月、@ITのフォーラムになりました。
現在ご覧いただいている記事は、既掲載記事をアーカイブ化したものです。新着記事は、 新しくなったトップページよりご覧ください。
これからも、@IT自分戦略研究所をよろしくお願いいたします。