「Turbo Pascal」の版間の差分
編集の要約なし |
|||
| 1行目: | 1行目: | ||
'''Turbo Pascal'''(ターボ パスカル)は、[[ボーランド]]が発売していた[[Pascal]]の[[統合開発環境]]である。[[エディタ]]、[[コンパイラ]]、[[リンカ]] | '''Turbo Pascal'''(ターボ パスカル)は、[[ボーランド]]が発売していた[[Pascal]]の[[統合開発環境]]である。[[エディタ]]、[[コンパイラ]]、[[リンカ]]を統合した[[パソコン]]向け統合開発環境の最も初期の製品のひとつである。 | ||
== 歴史 == | == 歴史 == | ||
スイスのチューリッヒ工科大学で[[Pascal]]の創始者である[[ニクラウス・ヴィルト]]のもとで学んだ[[フィリップ・カーン]]が、その素晴らしさを[[アンダース・ヘルスバーグ]]に説き、若干PascalっぽくないTurbo Pascalなるプログラミング言語を開発したとされる。 | |||
Turbo Pascalの開発者である[[アンダース・ヘルスバーグ]]はインタビューに対し、デンマークで開発を行い、アメリカへ渡った[[フィリップ・カーン]]のもとへ定期的に郵送でプログラムを送っていたと答えている。この時点でフィリップ・カーンは不法滞在であったがボーランド社を名乗りTurbo Pascalを売り歩いた。その後、Turbo | Turbo Pascalの開発者である[[アンダース・ヘルスバーグ]]はインタビューに対し、デンマークで開発を行い、アメリカへ渡った[[フィリップ・カーン]]のもとへ定期的に郵送でプログラムを送っていたと答えている。この時点でフィリップ・カーンは不法滞在であったがボーランド社を名乗りTurbo Pascalを売り歩いた。その後、Turbo Pascalのバカ売れ成功をうけ、本物のボーランド・インターナショナル社を米国にて設立した。 | ||
1983年11月、[[CP/M]]、[[MS-DOS]]版が販売開始され、その後[[Windows]]版も販売された。1985年には[[Macintosh]]版も販売されたが長くはサポートされなかった。 | |||
== 概要 == | == 概要 == | ||
個人で買えるほどの安い価格、[[アセンブラ]]で記述され、全ての動作を[[RAM]]内で行う高速な[[コンパイラ]]、フルスクリーンエディタを含む使いやすい[[統合開発環境]]は大きな衝撃を与えた。当時のメジャーなフルスクリーンエディタWordStarの編集操作用キーボードショートカットを、そのまま利用できたのも魅力であった。 | |||
バージョン4からは、[[Modula-2]]で実現された特徴のいくつかを[[Pascal]]に取り込み、ソフトウェアパーツのユニット化(分割コンパイル)や[[インラインアセンブラ]]の利用、[[ハードウェア]]への低レベルアクセス([[メモリ]]、[[I/Oポート]]直接アクセス、[[割り込み処理]]の実装)を可能にし、通常のPascalは守備範囲としていないハードウェア制御やグラフィック等を含むより実践的なソフトウェア開発が可能になった点などをあげることができる。バージョン5.5からオブジェクト指向機能を持つまでに拡張された。 | |||
[[Delphi]]および[[C Sharp|C#]]は、Turbo Pascalの後継ソフトウェアである。Turbo PascalとDelphi、C# | [[Delphi]]および[[C Sharp|C#]]は、Turbo Pascalの後継ソフトウェアである。Turbo PascalとDelphi、C#の言語仕様は[[インテル]]系パーソナルコンピュータ上での[[ALGOL]]系言語では[[デファクトスタンダード]]に近い存在となり、他のベンダからも(ソースレベルでの)Turbo PascalないしDelphi互換をうたう統合開発環境が数多く登場した。 | ||
一方で、[[最適化]]の面では[[ワンパスコンパイラ]]の限界に直面し、同じ[[ALGOL]]系各種言語を含む他の処理系に及ばない面もあったが、[[C Sharp|C#]]および[[.NET Framework]]へのバージョンアップに際し、事前の最適化コンパイルに加え、実行時に実行環境のリソースを調べ限界まで最適化を行う[[JITコンパイラ]]を搭載することで、起動速度は遅くなったものの飛躍的な実行速度を手に入れている。 | |||
== 日本語版 == | == 日本語版 == | ||
| 24行目: | 24行目: | ||
* [[Delphi]] | * [[Delphi]] | ||
* [[C Sharp|C#]] | * [[C Sharp|C#]] | ||
== 参考文献 == | |||
<references/> | |||
== 外部リンク == | == 外部リンク == | ||
{{stub}} | {{stub}} | ||