一些主要的编程语言(见下面的列表)由规范定义。但原则上,您还可以通过实现引用编译器/解释器来定义语言。 (我不想说这是个好主意。)但我很好奇:
是否有任何(主要)语言未通过规范定义,而是通过参考实现?
通过主要语言我只想确保答案不会提出深奥的答案(空白,脑筋,...)或类似的事情"我&# 39;我们刚刚创建了这个编译器。没有规范,所以你的回答是“是”'。"
我无法找到Ruby和TCL的规范
答案 0 :(得分:0)
几乎所有编程语言都是由参考实现定义的,直到它们不是。我只能通过参考实现和松散的规范开始考虑几种重要的异常。随着时间的推移,随着它的成熟,规范得到了加强,编译器必须遵循自己的规范。
当有第二个实施时,会发生重大变化。那么你需要一个正式的规范(但你并不总是得到一个)。
早期例外包括Algol 60,Pascal和Ada。每个人都很早就获得了一个规范,然后经常多次实现。 C#是另一个。
在回答您的问题时,Delphi现在是其自有品牌Pascal的参考实现; FoxPro是唯一留下的dBase语言;雷博尔;基本(你选择的任何方言); SQL(大多数方言都是非标准的); R和S;等
编程语言清单很多,标准清单很小。我猜你的问题是定义的:你会接受多少种语言作为“主要”?