Turbo Pascal

提供: MonoBook
TurboPascalから転送)
ナビゲーションに移動 検索に移動

Turbo Pascal(読み:たーぼぱすかる)とは、ボーランドが発売していたPascalに強く影響を受けたプログラミング言語および統合開発環境である。

概要[編集 | ソースを編集]

Turbo Pascalは、エディタコンパイラリンカを統合したパソコン向け統合開発環境のなかでも初期の製品のひとつである。

なお、プログラミング言語としては純粋なPascal実装ではなく、あくまでも「Turbo Pascal」というPascalから派生した独自言語である。関係としてはPythonBoo言語のようなものである。

歴史[編集 | ソースを編集]

スイスのチューリッヒ工科大学でPascalの創始者であるニクラウス・ヴィルトのもとで学んだフィリップ・カーンが、その素晴らしさを友人のアンダース・ヘルスバーグに説くという伝言ゲームのすえ、若干PascalっぽくないTurbo Pascalなるプログラミング言語が開発されたとされる。

Turbo Pascalの開発者であるアンダース・ヘルスバーグはインタビューに対し、デンマークで開発を行い、アメリカへ渡ったフィリップ・カーンのもとへ定期的に郵送でプログラムを送っていたと答えている。この時点でフィリップ・カーンは不法滞在であったがボーランド社を名乗りTurbo Pascalを売り歩いた。その後、Turbo Pascalのバカ売れ成功をうけ、本物のボーランド・インターナショナル社を米国にて設立した。

1983年11月に最初のバージョンとなるTurbo Pascal 1.0CP/MおよびMS-DOS向けに販売開始されたのを皮切りに、定期的なバージョンアップを繰り返し、その後にはWindows版やMac版も販売された。なお1985年に発売されたMacintosh版は長くはサポートされなかった。またKylixという製品名でLinuxでも発売した。

Turbo Pascal 1.0[編集 | ソースを編集]

Turbo Pascal 1.0は、1983年11月20日に発売されたTurbo Pascalシリーズで一番最初のバージョンである。

詳細は「Turbo Pascal 1.0」の項目を参照。

Turbo Pascal 5.5[編集 | ソースを編集]

詳細は「Turbo Pascal 5.5」の項目を参照。

概要[編集 | ソースを編集]

個人で買えるほどの安い価格、アセンブラで記述され全ての動作をRAM内で行う高速なコンパイラスクリーンエディタを含む使いやすい統合開発環境は大きな衝撃を与えた。当時のメジャーなスクリーンエディタであったWordStarの編集操作用キーボードショートカットをそのまま利用できたのも魅力であった。

バージョン4からはModula-2で実現された特徴のいくつかをPascalに取り込み、ソフトウェアパーツのユニット化(分割コンパイル)やインラインアセンブラの利用、ハードウェアへの低レベルアクセス(メモリI/Oポート直接アクセス、割り込み処理の実装)を可能にし、通常のPascalは守備範囲としていないハードウェア制御やグラフィック等を含むより実践的なソフトウェア開発が可能になった点などをあげることができる。さらにバージョン5.5ではオブジェクト指向機能を持つまでに拡張された。

DelphiおよびC#は、Turbo Pascalの後継ソフトウェアである。Turbo PascalとDelphi、C#の言語仕様はインテル系パーソナルコンピュータ上でのALGOL系言語ではデファクトスタンダードに近い存在となり、他のベンダからも(ソースレベルでの)Turbo PascalないしDelphi互換をうたう統合開発環境が数多く登場した。

一方で、最適化の面ではワンパスコンパイラの限界に直面し、同じALGOL系各種言語を含む他の処理系に及ばない面もあったが、C#および.NET Frameworkへのバージョンアップに際し、事前の最適化コンパイルに加え、実行時に実行環境のリソースを調べ限界まで最適化を行うJITコンパイラを搭載することで、起動速度は遅くなったものの飛躍的な実行速度を手に入れている。

日本語版[編集 | ソースを編集]

日本語版のTurbo Pascalは、マイクロソフトウェアアソシエイツとサザンパシフィックの2社が独自に日本語化を行なっており販売価格も違っていた。最終的にはマイクロソフトウェアアソシエイツに一本化され、後にボーランドジャパン(マイクロソフトウェアアソシエイツとボーランドインターナショナルの共同出資;後のボーランド株式会社)から発売された。


関連項目[編集 | ソースを編集]

参考文献[編集 | ソースを編集]