Sketchpadを操作中のアイバン・サザランド | |
作者 | アイバン・サザランド |
---|---|
初版 | 1963年 |
プラットフォーム | TX-2 |
種別 | アニメーション、 デッサン、 製図、 CAD |
Sketchpad は1963年、アイバン・サザランドが博士論文の一環で作成した革新的コンピュータプログラムであり、サザランドはこれが元でチューリング賞(1988年)と京都賞(2012年)を受賞した。コンピュータと人間の対話方法を変えるものであった。例えばグラフィカルユーザインタフェースはSketchpadが起源であり、オブジェクト指向プログラミングもSketchpadが先駆けであった。Sketchpad はCADプログラムの先駆けであり、コンピュータグラフィックス全般にとっても主要なブレークスルーの1つである。アイバン・サザランドは、コンピュータグラフィックスの芸術への活用と技術への活用を示すと共に、斬新なマンマシンインタフェースの手法を示した。
サザランドはヴァネヴァー・ブッシュの As We May Think でのMemexに触発された。また、Sketchpadに触発されたのがダグラス・エンゲルバートで、彼はスタンフォード研究所の オーグメンテイション研究センター (ARC) にて oN-Line System を設計・開発した。
Sketchpad はベクタースキャンブラウン管とライトペンを使用して、世界初の完全なグラフィカルユーザインタフェースを実現している。プログラム構成上の特筆すべき点として、データ構造の設計において「オブジェクト」や「インスタンス」といった概念を採用し、いわゆるオブジェクト指向の先駆けのひとつと言えることも挙げられる。基本的発想は、ある図形を作成したら、それを複製して何度でも実体化(instantiate)できるということである。ユーザーが元の図形に変更を加えると、他の全てのインスタンスが同じように変形される。Sketchpad は図形の幾何学的属性に簡単に制約を加えることもできた。例えば、直線の長さとか2つの直線の交わる角度などを固定できる。
Sketchpadに先駆けてBBNテクノロジーズも類似のプログラムを開発していた[1]。またMITのピーター・サムソンらも1962年にT-Squareを開発している。これらはどちらもPDP-1向けである[2]。
Sketchpad はMITのTX-2コンピュータ上で動作した。TX-2は36ビットワードで、64kワードの記憶容量である。36ビットに表示すべき点についての情報を格納でき、20ビットでX-Y座標を表し、残る16ビットでその点が属するコンポーネント(図形)のアドレスを表した。
当時、コンピュータの一般的な使用法はもっぱらバッチ処理であったことに注意が必要である。なぜかといえば、研究の黎明期を抜けて商用の時代に入ったコンピュータは、もはや個人が占有できるものではなくなっていたからで、そういった状況の中で、こんにちのようなコンピュータの使い方の先駆者であったと言える、サザランドや他の研究者たちは多大な労力を要した。
TX-2で大きなブラウン管で表示させて対話的に操作できるようにするには多大な作業が必要であった。サザランドがそれを成し遂げたとき、あとでバッチ処理に戻せる必要があった。このためにハードウェアの大々的な改修とソフトウェアの開発が必要となった。
Sketchpad プログラムはサザランドのMITでの博士論文の一部であった。その論文は1980年に Sketchpad: A Man-Machine Graphical Communication System の題名で再版されている。博士論文としては平易で極めて読みやすい。新たな電子版 (3.9MB PDF) は2003年に発行された。