Smalltalk-72 エミュレータ、あるいは ALTO 的体験

id:squeaker さんが言及しておられる Smalltalk-72 エミュについてに便乗。

西原さんや、id:propella さんこと山宮さんに触発されて、私もむかし、ちょっといじったことがあります。ここでも書いた記憶があったので、エントリーや添付写真資料を掘り起こしておきましょう。

いまよりもっと風変わりな文法

同じメッセージングというセマンティックスを拠り所としてはいましたが、Smalltalk-72 の文法は、現在、Smalltalk で知られる Smalltalk-76 以降の文法とは違っていました。クラスもオブジェクトというよりは関数で、むしろ、JavaScript のコンストラクタに似ています。

結局、自由度が高すぎることや、括弧を多用することを嫌って、のちにダン・インガルスが考えた Smalltalk-76 のキーワードメッセージ式が、以後、使われるようになりました。

史上初の GUI ベース OS(モドキ)としての Smalltalk-72

Smalltalk-72 は思いのほか長命で、その GUI のルック&フィールも最後まで手を入れられていたようです。当初、申しわけ程度にオーバーラップする矩形を並べただけだったウインドウも、最後には、こんな立派なものになります。

オリジナルの強みか、後発の Lisa や初期の Mac では抜け落ちてしまう(そして、のちに、同じく Smalltalk システムからの強い影響下で作られた Windows を経由するなどして復活する)機能を見つけることができるのは興味深いですね。

残念ながら、このように完成されたかたちでのルック&フィールを Smalltalk-72 エミュで即、体験することはできませんが、ソースを読むと、ウインドウらしき枠や、ポップアップっぽいメニューも Smalltalk-72 で記述されていることが分かり、すべてを Smalltalk(のオブジェクト)で実現しようとした当時の気概のようなものを感じとることは可能かと思います。