俗に言うオブジェクト指向3大機能って誰が言ったですか?

たまによく聞くオブジェクト指向の三大機能。

継承、ポリモーフィズムカプセル化

カプセル化がたまに、隠蔽だったり、クラスだったりすることもあるみたいですが、だいたいこれでオブジェクト指向の基本3点セット。ていうか、それって誰が言ったんですか?というのが今回のハテナ。
答え↓


言いだしっぺは「ビアルネ・ストラウストラップ」という人(C++の設計者)。
参考↓


オブジェクト指向の概念の発明者は誰ですか?
http://d.hatena.ne.jp/sumim/20040525/p1

現在「オブジェクト指向」を説明する人が(たいていは意識せずに)前提としているのは、C++ の設計者として知られるビアルネ・ストラウストラップが、C++ の設計を通じて 1980年代半ばまでに体系付けた“2”の「オブジェクト指向」です。カプセル化/情報隠蔽、継承、多態性…とかのいわゆる「三点セット」は、おそらくここで言われる「抽象データ型 + 継承と仮想関数による動的性(つまるところ「クラス」の機能)」が変形させられたものだと思って間違いないでしょう。(これ以前に発表された論文で、三点を網羅したものは見あたらないので…)


オブジェクト指向プログラミングとは何か?
http://d.hatena.ne.jp/sumim/20041019/p1

くだんのオブジェクト指向3点セットの元になったともくされる論文のメモ。抽象データ型に加えて、以下の機構がオブジェクト指向プログラミングをサポートするのに必要とされる。


・特殊な関数呼び出し機構(仮想関数、動的結合)
・型チェック機構
・継承機構
・多重継承機構
・アクセスコントロール機構


以上は5点ですが、ここから静的型言語(あるいは C++ )に特異的な3点(型チェック機構、多重継承機構、アクセスコントロール機構)が拒絶されて「抽象データ型+ 継承・動的結合」となったのち、「カプセル化、継承、多態性」に変化して定着したものと思われます。

ちなみに「特徴」というのはソレを別のものと区別するために使われることで。ほとんどのプログラム言語は既にオブジェクト指向の機能を備えてはいます。