日本で国鉄が設立されたのはいつ
Passage 1: 1980年代、オブジェクト指向プログラミングが急成長を遂げた。オブジェクト指向言語の多くは命令型のスタイルであるが、オブジェクトを扱う機能が追加されている。その後20世紀末まで、その種のプログラミング言語は多数開発された。1969年にアラン・ケイが考案したSmalltalkは、1980年にパロアルト研究所からリリースされた。他にも、1960年代後半から開発されていた世界初のオブジェクト指向言語 Simula や、C言語に基づいてビャーネ・ストロヴストルップが設計したC++がある。C++の最初の実装は1985年である。1980年代末から1990年代にかけて登場したオブジェクト指向のコンセプトを導入した命令型言語として以下のものがある:"本項目は Stan Seibert が Imperative programming について書いた Nupedia 上の記事（GFDLライセンス）に基づいて英語版 Wikipedia に掲載されたものを翻訳したものである。" 
Passage 2: クラスは非常に多くのオブジェクト指向プログラミング言語で提供されている機能ではあるが、オブジェクト指向プログラミング言語に必須の機能というわけではない。実際にオブジェクトの管理や、データ・メンバやメソッドの記述、継承に際してクラスという仕組みに依存せずに、もしくはクラスという仕組み自体を持たずに別の手段でこれらを実現している言語も存在する。このような言語をインスタンスベース (')、オブジェクトベース ("object-based") あるいはプロトタイプベース (') のオブジェクト指向プログラミング言語と呼ぶ。インスタンスベースまたはそれに類するのオブジェクト指向プログラミング言語には以下のようなものがある：なお、クラスベースの言語とインスタンス・ベースの言語との間には明確な境界線はない。たとえば、インスタンス・ベースの代表格ともいえる Self には、traits と呼ばれるクラスのような仕組みが追加されているし、JavaScript、NewtonScript に至っては traits 類似の仕組みを「クラス」と呼称している。また逆に、クラスベースの言語でもクローンを行うメソッドを備え、委譲の仕組みを記述すればある程度はインスタンス・ベースのスタイルでプログラムを記述できる。 
Passage 3: ノルウェーのマンダールで生まれた。ノルウェーでは最も有名な計算機科学者である。クリステン・ニガールと共に1960年代にオブジェクト指向プログラミングのアイデアを生み出し、 (NR) で Simula I（1961年–1965年）と Simula 67（1965年–1968年）をシミュレーションのためのプログラミング言語として開発した。ダールとニゴールはここで世界初のクラス、（明示的カプセル化を可能とした）サブクラス、継承、動的オブジェクト生成などオブジェクト指向パラダイムに重要な観点の数々を生み出した。「オブジェクト」はソフトウェアシステムにおける自己完結型の部品であり、その中にデータ構造とメソッドを持つ。オブジェクト群を統合して完全なシステムを形成する。オブジェクト指向は現在ではソフトウェア開発手法として広く普及しており、JavaやC++といった言語がある。