タイトルのとおりの印象を持ったのをきっかけにして、Java や Objective-C の勉強を兼ねて調べてみたことをメモ。三猫さんと odz さんとのやりとりを見ていて、ちょっと関係することもあるかな…とも。 Smalltalk のクラスの“振る舞い” よく言われるように、Smalltalk ではクラスもオブジェクトです。このことは、クラスも別のクラス(俗に言うところのメタクラス)のインスタンスであり、また、メッセージのレシーバになることができることを意味します。 もっとも後者の「レシーバに云々…」については、ケイのオブジェクト指向かそれに準ずるオブジェクト指向に立脚したときに限る…との但し書きが必要でしょう。つまり、C++ や Eiffel、Java など、ストラウストラップのオブジェクト指向の強い影響下にある言語においては、そもそもメッセージングという概念はそぐわないので後者は無用と