Oberon-2 (original) (raw)

Oberon-2 とは、プログラミング言語 Oberon を拡張し、オブジェクト指向的なコンセプトを取り入れた言語である。 1991年、チューリッヒ工科大学のニクラウス・ヴィルトと (現システムソフトウェア研究所)が開発した。Oberon-2 は Oberon の上位互換である。Oberon-2 は Object Oberon(Oberon にオブジェクト指向のコンセプトを導入した最初の試み)の再設計でもあった。 Oberon-2 は Oberon から限定されたリフレクションとインタフェースなどを持たない単一継承(型拡張)を受け継いでいるが、効果的な仮想メソッド(型束縛プロシージャ)を追加している。メソッド呼び出しは、C++のような仮想メソッドテーブルを使って実行時に確定する。 Smalltalk などの完全なオブジェクト指向言語に比べると、Oberon-2 の基本データ型はオブジェクトになっておらず、クラスもオブジェクトではなく、多くの操作がメソッドではないし、メッセージパッシングの概念もなく、ポリモーフィズムも限定的である(SmalltalkやRubyのようなダックタイピングがなく、Javaのようなインタフェースも定義できない)。オブジェクト/クラスレベルでのカプセル化もサポートしていないが、モジュールをその目的で使用することができる。