是否有ISO-Prolog参考实施?

Guy*_*der 4 standards reference-implementation iso-prolog

Java有一个参考实现.

ISO-Prolog是否有参考实施?

我确实有INCITS/ISO/IEC 13211-1:1995(R 2007),因此无需提出建议.

编辑

值得注意的是:符合性评估I:语法

fal*_*lse 5

让我首先澄清一下参考实现的含义.您的意思是一个示例实现,被认为代表对标准有效解释.从来都不清楚这样的实现可能具有什么样的规范价值 - 想想使许多系统循环的Java浮点语法错误.

ISO Prolog没有参考实现.就像没有C,C++或任何其他ISO/IEC标准化编程语言一样.请注意,Java不是由ISO,IEC,ITU或CEN等任何标准化机构标准化的,也不是ANSI等任何国家机构; 而是一家公司.而正是这家公司提供了参考实施.

此外,Prolog自1972年以来就存在 - 早在任何标准化发生之前.它是第一种同类型和范式的语言.它很快分裂成几种语言不相容的方言(Prolog 1,Edinburgh,Prolog II等).第一标准相关文件之一- 草案建议标准由理查德·奥基夫Prolog的可评价的谓词分发1984年.BSI始于1984年; 1985年AFNOR.1987年开始实施ISO程序,1995年提供ISO/IEC 13211-1.

与之形成对比的是Java,它是从以前的语言(如C,C++以及其他面向对象的语言)演化而来的,并且从它们继承了很多.它的发展方式完全不同,一家公司正在严厉地捍卫语言以抵御各种偏差 - 想一想:甚至禁止在互联网上提供手册的副本.

在任何情况下,具有最接近一致性的Prolog系统是:

  1. SICStus Prolog 4.3 beta 1.不知道是否误读任何有效的Prolog文本.完全支持Cor.1,Cor.2.

  2. GNU Prolog 1.4.4(git版本).不知道是否误读任何有效的Prolog文本.算术中的一些差异.否则Cor.1,Cor.2.

  3. IF/Prolog V5.唯一提供严格符合模式的系统(见ISO/IEC 13211-1:1995子条款5.1 e).

语法(阅读和写作)的具体比较可以让您对这些和其他实现的期望有所了解.

  • GNU Prolog 1.4.4 在 Windows 上给出 0.0,在 Linux 上给出你写的数字。你也可以添加一个目标 X==0,在 Windows 和 Linux 上得到不同的结果。另一方面,Windows 和 Linux 上的 Jeke 或 SWI 没有区别。 (2认同)