彼のために1990年チューリング賞を受賞スピーチ、フェルナンド・J・コルバトは、複雑なシステムは、必然的に失敗する理由を記載されています。彼の結論で、彼は失敗の確率を減らすためのいくつかの提案をします。彼は1つのアイデアを次のようにリストしています。
設計または合成のための制約された言語の[U]は強力な方法論です。プログラマーやデザイナーが無関係なアイデアを表現できないようにすることで、起こりうるエラーの領域ははるかに限定されます。
「制約言語」とはどういう意味ですか?
しばらくの間、制約プログラミングを検討しました。ただし、制約プログラミングとは、プログラムのソリューション空間を制限することです。これは、プログラマを支援するツールです。Corbatóが言及している機能は、実際にプログラマを制限するものであるか、または少なくとも彼女がより簡潔なコードを書く傾向があるように思われます。
私の第二の考えは、彼が保守的なプログラミング言語に言及しているということです。コルバトーは、1960年代と1970年代に行われた仕事に対してチューリング賞を受賞しました。彼が多くのパンチカードを扱ったことは私の理解です。私はパンチカードを見たことがないので、どのようにプログラムするかわかりませんが、パンチカードのプログラミングは非常にリベラルだと思うかもしれません。型チェック、静的分析などの概念は単に存在しなかったと思います。だから、Corbatóはおそらく開発者が愚かな間違いをするのを制限する言語のアイデアに言及していますか?これも事実ではないようです。安全性チェックとデータモデリングは簡潔さとは関係がありません。それは、彼が「許可しない...関連性のないアイデア」に言及したときに話しているようです。