Smalltalk-72で遊ぶOOPの原点 Advent Calendar 2023
Smalltalk-72のアドベントカレンダーとしては、4年ぶりの復活!?
Smalltalk-72はアラン・ケイの「メッセージング」のアイデアに基づきごく初期に実装されたSmalltalkで、後にアデル・ゴールドバーグ主導で(ある意味でアラン・ケイの意に反した)商用を目指し整備されたSmalltalk-80やそれベースの今に続くSmalltalkとは、メッセージングというキーコンセプトが共通であることを除けば全く違う別の言語・処理系です。
近年、1975年ごろ保存されたバイナリー(Smalltalk-72を動作させたAltoのメモリダンプ!)をJavaScriptで書かれたAlto/Novaエミュレータに読み込ませることで、Webブラウザ上でほぼ当時のままを体験することが可能になりました。
-
Lively Web › ALTO-Smalltalk-72.tweak3
※オリジナルのダン・インガルス版に少し手を加えてマウスクリックやナンチャッテクロック取得を可能にしたコピー(Chrome系Webブラウザ推奨)
今回は1972年のローリングストーン誌に掲載された、アラン・ケイがSmalltalk-72に先立ち当時考案中だった謎言語「Smalltalk-71」で書いたSpacewar(スペースウォー・ゲーム)のコードを読み解き、Smalltalk-72へ移植、なんとかそれっぽく動作させるまでを目指します!
もちろん流れをぶったぎっての飛び入り大歓迎です! Smalltalkやメッセージングのオブジェクト指向について遠慮なく熱く語ってください。
How to join the calendar
You can join the calendar by selecting an available date and registering the URL of the article you wish to link to. If a slot is available, you can go back to a past date to join!
Series 1
Sun | Mon | Tue | Wed | Thu | Fri | Sat |
---|---|---|---|---|---|---|
26 | 27 | 28 | 29 | 30 | ||
26 | 27 | 28 | 29 | 30 |
Sun | Mon | Tue | Wed | Thu | Fri | Sat |
---|---|---|---|---|---|---|
26 | 27 | 28 | 29 | 30 | ||
26 | 27 | 28 | 29 | 30 |