アカウント名:
パスワード:
ALGOL系の強い型の制約とブロック構造のスコープを持つ処理系は開発・デバッグの効率が非常に良い。C言語ではランタイム・エラーになるものの多くを、Pascal、Delphi等ではコンパイラがコンパイル・エラーとして教えてくれる。(コンパイルの時点で多くのバグを潰せる)言語仕様として規定されているわけではないが、ALGOL系コンパイラはいずれもお約束としてランタイム・エラー発生時のトレースバック表示の機能が実装されているのもデバッグ作業が非常にやりやすい。実感としてC言語よりも3倍~5倍ぐらいは開発・デバッグの効率が良い。
こういう理由があるから今でもDelphiは優れたフリーソフトの個人開発者に熱烈な愛用者が多い。ただし、残念ながら言語のコアの部分の仕様・機能以外の面では見劣りするところがあるので、企業での大規模な開発に向いているかというと‥‥‥
残念なのは今の開発者(=単なるプログラマ)はコンパイラ技術に関する知識が皆無で、ここに書いたようなことを全く理解出来ないこと。元々のPascalの固定長配列の仕様は実行時の配列インデックスのレンジ・チェック機能を簡単に実装出来るようになっていた~なんてことは誰も知らないのだろうな。 これも言語仕様によって実装が必須とされていたわけでは無いが、どのPascal処理系でもお約束としてコンパイル・オプションでこの機能をオン/オフ出来るようになっていた。
C言語ではランタイム・エラーになるものの多くを、Pascal、Delphi等ではコンパイラがコンパイル・エラーとして教えてくれる。
あれ?そうでしたっけ?確かに、なんかそんな印象があった気もするけど、いざとなるとなかなか思いつかない・・ああ、override・overload・reintroduce あたりはよかったです。特に override。C++ でも採用してくれれば、昔の俺の貴重な30分を浪費せずに済んだのに。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
Stay hungry, Stay foolish. -- Steven Paul Jobs
開発・デバッグの効率が良い (スコア:3, すばらしい洞察)
ALGOL系の強い型の制約とブロック構造のスコープを持つ処理系は開発・デバッグの効率が非常に良い。
C言語ではランタイム・エラーになるものの多くを、Pascal、Delphi等ではコンパイラがコンパイル・エラーとして教えてくれる。(コンパイルの時点で多くのバグを潰せる)
言語仕様として規定されているわけではないが、ALGOL系コンパイラはいずれもお約束としてランタイム・エラー発生時のトレースバック表示の機能が実装されているのもデバッグ作業が非常にやりやすい。
実感としてC言語よりも3倍~5倍ぐらいは開発・デバッグの効率が良い。
こういう理由があるから今でもDelphiは優れたフリーソフトの個人開発者に熱烈な愛用者が多い。
ただし、残念ながら言語のコアの部分の仕様・機能以外の面では見劣りするところがあるので、企業での大規模な開発に向いているかというと‥‥‥
残念なのは今の開発者(=単なるプログラマ)はコンパイラ技術に関する知識が皆無で、ここに書いたようなことを全く理解出来ないこと。
元々のPascalの固定長配列の仕様は実行時の配列インデックスのレンジ・チェック機能を簡単に実装出来るようになっていた~なんてことは誰も知らないのだろうな。 これも言語仕様によって実装が必須とされていたわけでは無いが、どのPascal処理系でもお約束としてコンパイル・オプションでこの機能をオン/オフ出来るようになっていた。
Re: (スコア:0)
Delphi7使った事ありますが、言語と言うよりIDEの使い方が
分かりにくかったかも。
Re: (スコア:0)
あれ?そうでしたっけ?確かに、なんかそんな印象があった気もするけど、いざとなるとなかなか思いつかない・・
ああ、override・overload・reintroduce あたりはよかったです。特に override。C++ でも採用してくれれば、昔の俺の貴重な30分を浪費せずに済んだのに。
Re: (スコア:0)
無料の Visual Studio で C# や C++ を使ってみると目からウロコが落ちると思いますよ