私の理解では、1980年代、そしておそらく1990年代にも、PascalとCは実稼働言語としてほとんど真っ向勝負でした。
パスカルの究極の終miseは、ボーランドのデルファイの怠慢によるものですか?または、運が悪かったり、Pascalに本質的に問題があるなど(復活の希望はありますか?)
好き嫌いではなく、歴史的な事実や観察できるバックアップに興味があります。
C
?
私の理解では、1980年代、そしておそらく1990年代にも、PascalとCは実稼働言語としてほとんど真っ向勝負でした。
パスカルの究極の終miseは、ボーランドのデルファイの怠慢によるものですか?または、運が悪かったり、Pascalに本質的に問題があるなど(復活の希望はありますか?)
好き嫌いではなく、歴史的な事実や観察できるバックアップに興味があります。
C
?
回答:
パスカルは主に次の理由で戦闘に負けました:
if ... then begin ... end
、var A: array[0..15] of Integer
)CはUnixのベースです。80年代および90年代に、Unixはますます注目を集めました。今日、Unixのフレーバーがスマートフォンにあります。
パスカルが私の好きな言語ではない理由エッセイブライアンW.カーニハンによる批判の主要なポイントをカバーしています。
Cははるかに用途が広く、拡張可能です。一部の人々は、Cで(ある種の)オブジェクト指向プログラミングを行う方法を見つけました!また、インラインアセンブラおよびその他の低レベル機能により、システムプログラミングの重要な言語になりました。
それは排他的な使用ではありませんでしたが、Pascalはプログラミングを教えるために設計されており、実際に主要言語として使用されることはありません。
DelphiとObject Pascalはそれを変更しました。しかし、その時点では、すでに遅れていました。
CがPascalよりも勝っているとは思わない。大多数のプログラマーにとって、JavaはPascalよりも勝っていました。Pascalでプログラミングを行っていたプログラマーのカテゴリーは、同じ仕事にJava(またはC#)を選択するようになりました。Cでプログラミングしていた人は、C(およびC ++)に固執していました。
Pascalの終Theは、主にボーランドがGUIの働き方に固執している一方で、顧客がWebに移行したことに起因します。ボーランドは、サーバーサイドの開発に対して本当に魅力的な提案をしたことはありませんでした。Delphiがすべての実用的な目的のために死んでしまった最後の数年でのみ、Delphiにこだわった人々はC#に移行しました。C / C ++は常にPascal / Java / C#の群衆とは異なる群衆であり、C(++)の人々ははるかに技術的/低レベルに焦点を当てています。
簡単に言うと、Cはポータブルアセンブラであり、PASCALは教育用言語です。
ウィキペディアのこのセクションでは、実際にそれを十分にカバーしています。
編集:
ここの一部は私の答えを誤解しているように思えます。または実際にはむしろ質問。
この質問は人気についてです。そして、Cが最終的にPASCALよりも人気がある理由は、1つは金属に近いポータブル言語として設計および販売され、もう1つは教育用言語として設計および販売され、多くの安全性と明確性を実施しているためです。
最終的に、どちらの言語が設定された目標を達成できなかったのか、予期しない成果を達成したのかは、実際には重要ではありません。そして、PASCALに対するCの優位性から人気の違いを推測しようとする人は、明らかに間違っています。
この質問の鍵は、歴史とそれに関わるヒステリーにあります。
many major development efforts in the 1980s, such as for the Apple Lisa and Macintosh, heavily depended on Pascal (to the point where the C interface for the Macintosh operating system API had to deal in Pascal data types).
70年代から80年代初期にかけて、Cコンパイラはパソコン用に比較的簡単に手に入りましたが、ほとんどはCのサブセットしか実行しませんでした(そのため、古い雑誌で非常に多くの異なる「小さなC」コンパイラが表示されます) )。Pascalは、最も裕福なコンピューター愛好家だけがハードドライブを所有していた時代に、より扱いにくい言語になりました(5メガハードドライブは数百ドルでした)。Apple 2(私の最初のコンピューターであり、「プラス」でもない)の場合、Pascalを実行するには追加のメモリーカードを購入する必要があり(64kのRAMが必要です!)、「tiny C」コンパイラは1枚のフロッピーに収まります(16kのRAMで対応できます)。
パスカルはコンピューターサイエンスのカリキュラムで教えられていましたが、Cはほとんど独学でした(電気工学のカリキュラムで教えられることもありました)。パスカルは、私は、彼らが会ったことのないよう不当だと思った「束縛と規律言語」であるためのカウボーイコーダーの間で評判、得ADAを。
80年代のPascalの主要なドライバーは、Apple(APIはPascal呼び出し標準を使用していたため)とBorlandでした。ボーランドの「ターボ」コンパイラは、おそらく市場で最も優れたコンパイラであり、「本のような」ライセンスは、より悪質なライセンスを持つ企業よりもはるかに人気がありました。
ボーランドは、Microsoftがリード開発者とプロジェクトマネージャー(Hejlsberg、Gross、その他35人以上)を雇い、最終的に.NETとVisual Studioを開発したときに、開発市場でリードを失いました。ボーランドとマイクロソフトは数年後に訴訟を解決しましたが、ボーランドは損失から回復することはありませんでした。私の意見では、Delphiはその時点で萎縮し始めました(フォーカスとドライブを与えた人々が雇われたため)。同時にCEOの変化により、ボーランドはコンパイラー会社からALM(アプリケーションライフサイクル管理)会社になりました。 、数年後に名前をInpriseに変更します。ボーランドの灰は現在、Micro Focusが所有しています。
ホーリーは、これは片側だけのフーイです。このサイトで始めた人たちは、Delphiをお気に入りの言語として使っていましたか?
ほぼ全員がボーランドに言及しており、2/3の人々がDelphiがバケツを蹴ったと考えています。申し訳ありませんが、エンバカデロは数年前にボーランドのCodeGearユニットを購入しました(チャリティーではなく、お金のため)。彼らはかなり素晴らしいことをして、いくつかの素晴らしいツールを彼らの素晴らしいIDEに統合し、素晴らしいプラットフォームを作成しましたOBJECT PASCALでのクロスプラットフォーム開発用。物事のオープンソース側のLazarusとFreePascalは言うまでもありません。
したがって、これがCがPascalに勝った理由が歴史的な質問であれば、それで問題ありません。しかし、Object Pascalのコードの作成者は増え続けており、TIOBEインデックスがそれにとって大きな意味があることは知りませんが、Embarcaderoが新しいツールをリリースするたびに、人々はまだObject Pascalでコードを書いており、関心が急上昇していることは明らかですしたがって、(古いコードを維持するだけでなく)新しいコードを書くことに興味がある実際の人間は、Delphiに興味を持っています。
Cに関連するものについて同じことを言えるかどうかはわかりません。
私の考えでは、Cとそれから派生した主要言語であるC ++、Java、C#は、MicrosoftやSun / Oracleなどのさまざまな開発スタックにまたがる最大のソフトウェア企業に受け入れられました。その結果、Windows、Apple OS、およびUnixの「母国語」になりました。
パスカルは、ボーランドの最善かつしばしば見当違いの努力にもかかわらず、そのレベルの市場浸透を達成しませんでした。
Pascalは、単一のかなり限られた環境のPC / DOSでのみ人気を博しました。
それでも、PC上で実行されるMicroFocus COBOLアプリケーションは、パスカルアプリケーションと同じ数でした。
Cは、UNIXオペレーティングシステムとすべてのMS / Windowsオペレーティングシステムの基本でした。
限られたハードウェアでの効率的な実行と、基盤となるOSおよびGUIライブラリへのネイティブアクセスの組み合わせが、おそらくCの成功の主な理由でした。PascalはWindowsで実際にハッキングすることはありませんでしたが、Delphiは違いを生むには遅すぎました。