19

私はこの「プログラミング言語のリスト」に出くわしましたが、Python のような一般的な言語は標準化されていないことがわかりました。それはなぜですか、また「標準化された」とはどういう意味ですか?

4

3 に答える 3

47

「標準化された」とは、その言語が、一般に ISO、ANSI、または ECMA によって作成された正式な承認された標準を持っていることを意味します。Python や Perl などの多くの最新のオープンソース言語は、外部団体によって正式に標準化されておらず、代わりに事実上の標準があります。

言語を標準化する利点は、a) 言語がランダムに変更されないことがわかっている、b) その言語用に独自のコンパイラ/インタプリタを作成したい場合、すべてがどのような動作をすべきかを示す非常に明確なドキュメントがあることです。元の実装でその動作を自分でテストする必要はありません。このため、標準化された言語はゆっくりと変化し、多くの場合、複数の主要な実装があります。

言語は、有用であるために標準化する必要はありません。ほとんどの非標準言語は、理由もなくランダムに下位互換性のない変更を加えることはありません (もしそうするとしたら、*咳*Perl6*咳*の方法を決定するのに10年かかります)。非標準言語は、クールな新しい実験的機能をはるかに迅速に追加できます。 (そしてより移植性が高い)標準化された言語よりも。

いくつかの標準化された言語:

標準化されていない言語:

  • パール
  • パイソン
  • PHP
  • Objective-C

完全なリストはウィキペディアにあります。

于 2009-10-08T05:04:44.537 に答える
7

「基準」があり、「基準」があります。

ほとんどの人は、標準が ISO、ECMA、EIA などの標準作成組織によって渡されたことを意味します。弁護士はこれらを De Jure Standards と呼んでいます。法の効力があります。

さらに、「デファクトスタンダード」があります。

また、「Industry Standard」または「vendorname Standard」を追加して単語を改ざんする人もいます。これは無意味なマーケティング ノイズです。

De Facto Standard は、実際に標準化されているものですが (誰もが標準化を行っており、そのようにしていることに同意しているため)、一部の標準化団体によって支持されていません。

Python には、De Jure Standard ではなく、De Facto Standard があります。

于 2009-10-08T10:51:13.820 に答える
4

標準化とは、言語の仕様 (「標準」) が存在することを意味します。たとえば、Java には仕様があります。Perl 5 にはありませんが (ソース コードは「標準」です)、Perl 6 にはあります。

Python 言語仕様はありますか?を参照してください。

于 2009-10-08T04:57:40.167 に答える