キメラを分かつ
今のオブジェクト指向が、どんなに少なく見積もっても2つの異なるパラダイムの奇妙な(それぞれの提案者が望まないかたちでの)キメラな状態でまかり通っていること、それが学習の障害になっていること、「オブジェクト指向」を限界を知ったうえで効果的に運用するには、これら2つがそれぞれどんなものかやその前提とするところを“個別”に正しく知っておく必要があるのではないか
確認すると、ここでいう「2つ」とは
である。私見を付け加えると、この両者が「キメラ」でありえるのは、両者が異なるレベルの概念であったためである(前者は哲学・世界観レベルであり、後者は設計・実装レベルである)。
両者は別物であるが、決して直交しない。オブジェクト指向(1)の実現方法として、(2)の実装が存在する*1のは、矛盾を生じていない*2。
そして、同時に、それ以外の実現方法――静的型のない Smalltalk、クラスに従属するメソッドを持たない CLOS、あるいは SELF や Io のようなクラスさえない*3――もあるということさえ、理解すればいい。
これが私の見解。