カール・サセンラス

カール・サセンラスは、オペレーティングシステムとコンピュータ言語の設計者。1985年、AmigaOSのカーネルを開発し、パーソナルコンピュータにマルチタスクをもたらした。最近では、REBOL言語を設計し、REBOL Technologies の CTO を務めている。

1. 学生時代まで
---------

1957年、カリフォルニア州で生まれた。父は石油精製、製紙、大気汚染抑制システムを専門とする技術者で、研究開発に従事していた。

1960年代末ごろ、一家はサンフランシスコ・ベイエリアから同じカリフォルニア州のユーレカという小さな町に引っ越した。彼は幼いころから電子工学、アマチュア無線、写真、映画撮影などを趣味としていた。13歳のとき、地元のPBS系列のテレビ局 KEET で働くようになり、1年後にはKVIQで撮影技師になり、その後はディレクターになった。

1980年、カリフォルニア大学デービス校を卒業し、EECSの学士号を得た。大学では特に、オペレーティングシステム、並列処理、プログラミング言語、神経生理学に興味を持つようになった。大学院のコンピュータ言語コースの教育助手と神経科学および行動生物学の研究助手を務めていた。叔父のジュリアス・サセンラスは同校の教育心理学部門のトップにおり、叔母のエセル・サセンラスは California National Primate Research Center で初期のTHCの研究を行った1人である。

2. 経歴
-----

2.1. ヒューレット・パッカード
-----------------

大学最後の年、サセンラスはヒューレット・パッカードのコンピュータシステム部門で HP 3000 用のOSである Multi-Programming Executive  のファイルシステム設計グループの一員として働いた。そこで彼は //Outqueue// という制御言語のコンパイラの実装を行った。翌年には MPE-IV OS のカーネルチームの一員となり、その後 HPE カーネルグループに参加した。

この頃、サセンラスは当時のOSの大変な複雑さを低減させることに興味を持ち、マイクロカーネルの概念に独自にたどり着いた。彼はそれをHPに提案したが、会社側は無関心だった。

1981年末から1982年初めにかけて、サセンラスは休暇を取り、アメリカ国立科学財団の大気物理研究に参加し、アムンゼン・スコット基地を訪れた。休暇から戻ると、会社との新たな合意に達し、分散コンピューティングにおけるGUIとPRCなどの独自研究を進めることになった。

1982年後半、パロアルト研究所とMITメディアラボの発表した新技術に触発され、サセンラスはマウスを使った現代的なウィンドウベースのGUIを開発する社内プロジェクトを立ち上げた。この Probus プロジェクトは当時スタンフォード大学にいたアンディ・ベクトルシャイムから借用したサン・マイクロシステムズのワークステーション上で開発を行った。Probus にはハイパーリンクや初期の分散コンピューティングの概念が生かされており、デモ動作までこぎつけ、GUIの威力を示すことができた。

また、サセンラスはHP社内の各種言語プロジェクトにも参加し、影響を受けた。

2.2. Amiga Computer
-------------------

1983年、サセンラスはシリコンバレーで設立されたばかりの Amiga Computer, Inc. に移った。OS開発の責任者として Amiga 向けの新しいOSの設計を任された。

当時としては洗練された設計のコンピュータであったことから、サセンラスはマイクロカーネル設計のプリエンプティブ・マルチタスクOSを開発すると決めた。これは1983年当時のパーソナルコンピュータのOSとしては画期的な設計だった。当時はシングルタスクのMS-DOSや擬似マルチタスクのMac OSしかなかったのである。

AmigaOSはマイクロカーネルの実用化という意味でも初期の実装の一つであり、リアルタイムメッセージパッシングも基づき、Exec という中核部と動的にロードされるライブラリ群、デバイスと呼ばれるオプションモジュールから構成されていた。

この設計により、AmigaOS は1980年代のメモリ容量の少ないコンピュータ上で驚異的な拡張性と柔軟性を発揮した。サセンラスは後に、この設計に到達したのは多数のライブラリ群とグラフィックス、サウンド、GUI、フロッピーディスク、ファイルシステムなどのデバイス群を ROM に収めようとする過程で必要に迫られたからだと述べている。動的モジュール構造であるため、様々な追加モジュールが何年にも渡って開発されることになった。

1985年に Amiga がリリースされると、サセンラスは大学時代から暖めていた新しいプログラミング言語の設計を追求するため、同社を辞めた。

2.3. アップルコンピュータ
---------------

1986年、サセンラスはApple Computerの Advanced Technology Group  で、新世代OSの開発に参加することになった。彼が参加したのは Aquarius と呼ばれるプロジェクトで、これは4プロセッサの Macintosh 後継機の開発プロジェクトであった。

そのころ C++ という言語が新たに登場してきたが、サセンラスは他のアップルの研究者と同様、もっと純粋なオブジェクト指向実装である Smalltalk を好んだ。ATG では、アラン・ケイやビル・アトキンソンといった大物と共に働き、サセンラスは様々な知識やコンピュータ言語観といったものを吸収していった。

2.4. Sassenrath Research
------------------------

1988年、サセンラスはシリコンバレーを離れ、サン・フランシスコの北にある Ukiah Valley 山中に移った。そこで彼は Pantaray、American Multimedia、VideoStream といったマルチメディア系企業を設立した。また、Amiga 向けに LOGO 言語を実装したり、Commodore CDTV のOS開発を指揮した。CDTV はCD-ROMを装備した初期のセットトップボックスである。

2.5. REBOL Technologies
-----------------------

1996年、Java、Perl、Python といったプログラミング言語の開発と成長を見てきたサセンラスは、独自のプログラミング言語の開発を決断した。その結果がREBOLである。

サセンラスはREBOLが万人向けでないことを認めている。多くの点で他の言語とは違うため、REBOLユーザーにはそれまでにプログラミングについて知っていたことを全て忘れた方が良いと示唆している。

1998年、サセンラスは REBOL Technologies を創設した。その後、REBOL の改版を続け、REBOL/View、REBOL/Command、REBOL/SDK、REBOL/IOS といった派生製品を開発した。現在、REBOL V3.0 を開発中である。

3. 私生活
------

カリフォルニア州ユカイア  在住。ブドウを栽培し、趣味として自前でワインを作っている。また、ユカイア地区のテレビ放送中継を行っている非営利組織でボランティアとして活動している。

アマチュア無線、ビデオ制作、量子電磁力学、ボートなどを趣味としている。

4. 参考文献
-------

//Amiga ROM Kernel Reference Manual: Exec//; Carl Sassenrath; Commodore; 1986
//Guru's Guide to the Commodore Amiga//; Carl Sassenrath; 1989
//The Object Oriented Amiga Exec//; Tim Holloway; Byte Magazine; 1991
//REBOL Bots//; Web Techniques; 9/1999
//Inside the REBOL Scripting Language//; Dr. Dobb's Journal; 6/2000
//REBOL for Dummies//; Ralph Roberts; Hungry Minds; 2000
//REBOL Programming//; Olivier Auverlot; Éditions Eyrolles; 2001
//Computing Encyclopedia, Vol 5: People//; Smart Computing; 2002
//The REBOL IOS Distributed Filesystem//; Dr. Dobb's Journal; 9/2002
//The REBOL/Core Users Guide//; Carl Sassenrath; 2000-2005

5. 外部リンク
--------

[1]
[2]
[3]
[4]
[5]
[6]