Smalltalk の誕生日は?

Matz にっきによると、1993 年 2 月 24 日は「 Ruby の誕生日」なのだそうです。おめでとうございます。

我らが Smalltalk はというと、まず、「Smalltalk」という名前自体は、後に Smalltalk-71 と呼ばれるようになる処理系ときにすでに使われていることは置いておくとして、メッセージングで多くを成り立たせる真の Smalltalk(つまり純粋な「オブジェクト指向」の。くどいようですが、ここでのオブジェクト指向*1は「カプセル化・継承・多態性」の…ではなく、ケイのメッセージ指向あらため「間(ま)指向」の…)としては、ケイのアイデアをヒントにダン・インガルスが BASIC で作った実装で「 3 が + 4 というメッセージ*2を受け取ると必ず 7 を返してきた」日が、Smalltalk の誕生日ということになりましょうか。

「The Early History of Smalltalk (PDF)」の APPENDIX III のメモのコメントとその日付から、この日は 1973 年の 3 月 23 日よりすこし前、ということでよさそうですが、残念ながら正確な日は分かりません。その場におられた当事者のどなたか、覚えていらっしゃいませんかねぇ…。

こちらに続く…

#もしや偶然、Ruby 誕生からちょうど 20 年前のおなじ日だったりしたら、ちょっとおもしろいのですが。

ああ…、でもその可能性は(偶然でもさらに)少ないかも。

'2.24.1973' asDate weekday  " => #Saturday "

土曜日だから。

追記
そもそも 1972 年のことだったので、前提が間違っていました。


*1:「ここでのオブジェクト指向」 念のため、誰に頼まれているわけでもないのにさらにくどくどと補足させていただくと、私はなにも今ある「オブジェクト指向」の意味を原義に置き換えようという運動をしているわけではありません。今のオブジェクト指向が、どんなに少なく見積もっても2つの異なるパラダイムの奇妙な(それぞれの提案者が望まないかたちでの)キメラな状態でまかり通っていること、それが学習の障害になっていること、「オブジェクト指向」を限界を知ったうえで効果的に運用するには、これら2つがそれぞれどんなものかやその前提とするところを“個別”に正しく知っておく必要があるのではないか…ということを提案したいと思っているわけです。

*2:「+ 4 というメッセージ」 “ + というメッセージ”ではない、ということ。つまり、引数の 4 まで含めてメッセージなのです。ご注意あれかし(^_^;) …で、前の脚注にからめてくどいのは承知のうえで念には念を入れて。 こういう、なにがどこまでメッセージかみたいな、あるいはそもそも非同期でもない関数呼び出しをメッセージングになぞらえること自体すでに、ストラウストラップの考えた「カプセル化・継承・多態性…」なオブジェクト指向にとっては関係ない区別すべき話であるといったようなことに、しつこくw脚注を入れずに済むようなコンセンサスが成立するようになるといいなぁ…と本官は思うわけ、であります!