我偶然发现了这个“编程语言列表”,发现像 Python 这样的流行语言没有标准化?为什么会这样,“标准化”到底是什么意思?
最佳答案
“标准化”是指该语言具有正式的、经批准的标准,通常由 ISO 或 ANSI 或 ECMA 编写。许多现代开源语言,如 Python、Perl,都没有由外部机构正式标准化,而是有一个事实上标准:无论原始工作实现做什么。
标准化语言的好处是 a) 你知道语言不会随意改变,b) 如果你想为该语言编写自己的编译器/解释器,你有一个非常清晰的文档告诉你什么行为应该做的一切,而不是必须在原始实现中自己测试该行为。正因为如此,标准化语言变化缓慢,并且通常有多个主要实现。
一门语言并不一定要标准化才能有用。大多数非标准语言不会无缘无故地做出随机的向后不兼容的更改(如果他们这样做,他们需要十年时间来决定如何*咳*Perl6*咳*),非标准语言可以更快地添加很酷的新实验特性(并且更便携)比标准化语言。
一些标准化语言:
- C ( ISO/IEC )
- C++ ( ISO/IEC )
- 通用 Lisp ( ISO/IEC )
- 方案 ( IEEE )
- JavaScript ( ECMA-262 )
- C# ( ECMA-334 )
- ruby ( ISO/IEC )
非标准化语言:
- Perl
- python
- PHP
- 目标-C
完整列表在 Wikipedia 上.
关于Python 不是标准化语言?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1535702/