Prolog兼容性层-可用的编程库
在一个Prolog实现中缺少某些谓词,而在其他实现中可用.
There is a lack of some predicates in one Prolog implementations, that are available in others.
我们可以实现缺少谓词的功能,我们称其为"Prolog兼容性层".
We can implement lacking predicates, let's call this "Prolog Compatibility Layer".
您知道Prolog(尤其是GNU-Prolog)的"Prolog兼容性层"吗?
Do you know "Prolog Compatibility Layers" for Prolog (especially for GNU-Prolog) ?
请按以下方式构造答案:
Please structure answers in following way:
- 标题(带有链接).
- 已实现" -您可能想使用的序言实现
- 与...兼容" -完成兼容层的prolog实现
- 功能" -兼容功能列表(您可以将喜欢的字体加粗)
- 其他信息" -注释,要求,限制等.
- 许可证" -许可证信息
- Title with link.
- "Implemented for" - prolog implementation you might like to use
- "Compatibility with" - prolog implementation for which compatibility layer is done
- "Functions" - list of compatibility functions (you can bold yours favourites)
- "Additional info" - comments, requirements, limitations etc.
- "License" - license info
P.S.受另一个问题启发的问题: Prolog语法问题.
P.S. Question inspired by another question : Prolog syntax problem.
- GNU Prolog compatibility layer
- SWI Prolog Compatibility layer
- YAP Prolog compatibility layer
实现为: GNU-Prolog,SWI Prolog,YAP Prolog.
Implementated for: GNU-Prolog, SWI Prolog, YAP Prolog.
与以下设备的兼容性:SWI-Prolog和其他Prologs
Compatibility with: SWI-Prolog and other Prologs
描述:(与GNU兼容)实现了SWI Prolog中发现的许多基本谓词 以及GNU Prolog中没有的许多其他Prolog实现."
Description: (GNU Compat.) "implements many essential predicates found in SWI Prolog and many other Prolog implementations that aren't available in GNU Prolog."
功能:(GNU兼容)not/1,is_list/1,succ/2,sformat/3,string/1,is_codes/1,算术功能, eval_arith/2 ,downcase_atom/2,forall/2,标志/3,介于/3 ,gensym/2,时间/1,if/2,if/3,if/4
Functions: (GNU Compat.) not/1, is_list/1, succ/2, sformat/3, string/1, is_codes/1, arithmetic_function, eval_arith/2, downcase_atom/2, forall/2, flag/3, between/3, gensym/2, time/1, if/2, if/3, if/4
其他信息:(与GNU兼容).此外,您还需要包括SWI发行版中的list.pl."
Additional info: (GNU Compat.) "Additionally, you need to include lists.pl from the SWI distribution."
许可证: GNU公共许可证