44、Prolog 不同实现版本的差异解析

Prolog 不同实现版本的差异解析

1. 语法与程序布局
  • 语法选择 :Expert Systems Ltd.(ESL)的 Public Domain Prolog–2 版本 2.35 被学生广泛使用,若要选择与 DEC–10 兼容的语法,需在程序开头添加指令 :- state(token_class,_,dec10). 。否则,语法会稍有不同,例如 % 不会引入注释,双引号界定的字符串(如 "like this" )也不等同于代码列表。由于 ESL 已停止运营,更新不能立即推出,但实现者(Tony Dodd)希望后续能发布更新。
  • 注释 :早期的一些 Prolog 版本不将 % 识别为注释分隔符,但如今的实现版本已无此限制。部分 Prolog 允许 /*...*/ 注释嵌套,如 SWI 和 ALS Prolog,会将 /* /* */ */ 视为包含另一个注释的有效注释。然而,在其他测试过的 Prolog 以及 ISO 标准中,注释从第一个 /* 开始,到第一个 */ 结束,无论中间有何内容。这意味着不能用 /* */ 注释掉包含 /* */ 注释的 Prolog 代码。
  • 空白字符 :Arity Prolog 4.0 不允许运算符紧跟左括号,否则运算符
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值