代码之家  ›  专栏  ›  技术社区  ›  eozzy

python不是标准语言?

  •  12
  • eozzy  · 技术社区  · 16 年前

    我偶然发现了这个“编程语言列表”,发现像Python这样的流行语言没有标准化?为什么会这样?标准化是什么意思?

    3 回复  |  直到 12 年前
        1
  •  32
  •   harsha    12 年前

    “标准化”是指语言具有正式的、经批准的标准,通常由ISO、ANSI或ECMA编写。许多现代的开放源码语言,如python、perl和ruby,并没有被一个外部体正式标准化,而是有一个 事实上的 标准:无论原始工作实现做什么。

    标准化语言的好处是a)你知道语言不会随机改变,b)如果你想为语言编写自己的编译器/解释器,你有一个非常清晰的文档,告诉你每件事情都应该做什么,而不是在最初的实现中自己测试这种行为。因此,标准化语言变化缓慢,并且通常有多个主要实现。

    一种语言不需要标准化才能有用。大多数非标准语言不会无缘无故地进行随机的向后不兼容的更改(如果这样做,它们需要十年时间来决定如何*cooke*perl6*cooke*),而且非标准语言可以比标准语言更快(更方便地)添加酷的新实验特性。

    一些标准化语言:

    • C
    • C++
    • 普通LISP
    • 方案(?)
    • javascript(ecmascript)
    • C.*
    • 红宝石

    非标准语言:

    • 珀尔
    • 蟒蛇
    • PHP
    • Objtovi-C

    已打开完整列表 Wikipedia .

        2
  •  4
  •   S.Lott    16 年前

    有“标准”和“标准”。

    大多数人都认为标准是由一个标准编写机构通过的:ISO、ECMA、EIA等。律师们称之为法律标准。这是法律的力量。

    此外,还有“事实上的标准”。

    有些人还通过添加“行业标准”来破坏这个词,或者 供应商名称 标准”。这只是毫无意义的营销噪音。

    事实上的标准是在实践中标准化的东西(因为每个人都这样做,并且都同意这样做),但它是 有一些标准组织的支持。

    python有事实上的标准,而不是法律上的标准。

        3
  •  2
  •   Community Mohan Dere    8 年前

    标准化意味着存在语言规范(“标准”)。例如,Java有一个规范。Perl5没有(源代码是“标准”),但Perl6会。

    Is there a Python language specification?

    推荐文章