こんばんは。アマチュアLisp考古学者の山下です。先週弊社でピザを焼きながら唐突に話題に上った、LainのHandiNAVIにLispのソースコードが表示されているシーンについて検証していきます。
まずは先人たちの研究によって判明している事項のまとめ:
- HandiNAVIのハードウェアのモデルはApple Newton
- OSはCopland OS Enterprise。これはMacのSystem 8の候補で、結局ヴェイパーウェアになったCopland Projectではないか
- ソースコードはCMU AIのリポジトリにある、ライフゲームのコード
- 言語はCommon Lisp
以上のことはwikipedia英語版のSerial Experiments Lainの記事にまとまっています。
ちなみに、このライフゲーム、お好みのCommon Lispのリスナーに書けば動くんですが、ちょっと見た感じ停止しないっぽいので、カウンターつけるなり、next-cycle
の頭とかに (sleep 1)
くらい入れてやると良いです。
それはさておき、今回特定したいのは、Lispを表示しているこのエディタ、開発環境の正体です。
この画像をよく見ると、一部隠れているもののウインドウのタイトルが読めます。CRowViewCL。まずはこれをGoogleサーチしてみました。
検索結果は一件。 なんと件の環境をブラウザ上に再現しているサイトが出てきます。
mebious.neocities.org 謎しかないけどワイヤードの世界を体験出来ます。 誰か詳細知ってたら教えてください。 wired.entry.neocities
このページのおかげでわかったことは、CRowViewCLは実在のソフトウェアではないことと、件のエディタがIDEであるということ。確かに元画像にもIDEという文字は見て取れます。
Apple NewtonやCoplandへのリファレンスから、最初はMacかNeXTSTEPかのソフトウェアかと推理したのですが、よく観察するとどうもそうではなさそうです。
- メニューバーがウインドウに内包されている。
- フォントがChicagoでない。
Copland ProjectのPinkのスクリーンショットでも、メニューバーは画面上部にあり、Chicagoフォントが使われているのが確認できるので、アップルのシステムという線は捨てて捜査を進めました。
ではなんなのか
このページによると、各エピソードの終わりに表示される"To Be Continued"のBeのカラーリングがBe Inc.の昔のロゴをリゼンブルしているらしい。BeOSも出自からしてAppleと関係が深い。ビビビッと来ましたね。
- フォントが一致. どちらもCourier 10 BT Roman
- ウインドウの枠線が一致。1pxの線と直角を多用するBeOSの可愛らしい特徴が出ています
- メニューバーの色が一致
- メニューバーの項目、File Project Windowが一致。ツールバー右端にはみ出ている Data が決定的証拠.
- ツールバーの下の ▽sources が一致
この画面は、 CodeWarrior 1.5 for BeOSのスクリーンショットです。CodeWarriorなんて初めて聞いたけど、XCode以前に一大帝国を築いていたIDEらしいです。対応言語はC,C++,Pascal,Javaで、残念ながらCommon Lispは入っていないようです。
HandiNaviで動くLispの開発環境CRowViewCLのモデルは、Code Warrior for BeOSだということが判明しました。
また、HandiNAVIでBeOSのバイナリが走っていることから、Copland OS EnterpriseはBeOSの亜種なのではないかという仮説が立ちます。
Code Warrior for BeOSとLainを結びつける記述はどこにも発見できなかったので、きっと新発見だと思います。
せっかくなので再現画像を作ってみました。Code Warrior for BeOSのウインドウに、Emacsでハイライトしたライフゲームのソースコードをハメ込んでいます。
Reptoidsボタンがあるツールバーは依然謎のままです。昔の映像だと、他のボーダーはスムースなのにツールバーの上だけジャギってるので、ハメ込みじゃないかと思ってます。ちなみにReptoidはヒト型爬虫類のことです。あとは頼みます。
p.s.