Lightweight Language MAGAZINE 買いました。3つのお題はおもしろそうなので、暇を見て Smalltalk/Squeak で書いてみたいですね。通信とかの勉強にもなりそうだし。なにしろ、Rubyスクリプトはたいてい Smalltalk に直訳できるので助かります。(パターンマッチングや多値渡しを駆使したこんなのはちょっと翻訳がいりますけどね…(^_^;))

おおしまさんの Squeak 記事で、Smalltalk のメッセージ送信式の構文への言及「0個または1個以上の引数とメッセージセレクタをオブジェクトに送信する」は、いただきです。ちょこちょこ使わせていただきます(笑)。

Smalltalkスクリプトを書くに当たって「オブジェクトへのメッセージの送信」という書式、これだけ知っていればよい、というところは LISP のS式に匹敵する(考え様によっては、マクロなどの介在で多様な解釈があり得る LISP のS式をも凌駕した)シンプルさであることは、ともすると冗長になりがちなメッセージセレクタ、あるいは引数をメッセージセレクタ中に挿入するという変則的記法の影に隠れて、案外、知られていない誤解されがちな事実だと言えましょうか。

メッセージ送信にからめては、いつだったか Smalltalkers' salon ML で話題になっていた、Smalltalk とはなんぞやという命題について、最近は「すべてはオブジェクトへのメッセージ送信である(そしてそれを貫くべく努力すべし)」というドグマ、それ自体が Smalltalk の“正体”というのが答えなのではないかなぁ…と思うようになりました。ここまで Smalltalk に似ている Ruby をしてもまったく心動かされないのも、これで合点がゆくような気がします。