在没有考虑太多的情况下,在我看来,一大堆Prolog的功能可以作为关系演算(又称SQL)来实现.
有没有人听说过任何自动将Prolog转换为SQL的工具?
当然是.
怀疑论者的前提:任何关于数据库理论的半正式书都提到Datalog(类似Prolog)和证明可以将其转换为关系代数(RA)(在特定限制下)的定理.
SQL不忠实于RA或关系演算,但足以支持Prolog:
Christoph Draxler为他的论文开发了一个Prolog to SQL编译器(PL2SQL),可供下载(.tgz) - 也可以在CMU人工智能库中使用(它至少被改编并包含在内:Ciao Prolog和SWI-Prolog通过Blipkit -生物医学LogIc编程知识集成套件);
Igor Wojnicki为他的博士(基于规则的推理引擎扩展关系数据库管理系统的知识处理能力)开发了一个原型系统,实现了他的Jelly View技术,称为ReDaReS,但似乎无法下载;
关系抽象机(RAM)将Prolog转换为关系代数,但它似乎没有SQL后端;
Walter D. Potter有几篇关于Prolog/RDBMS集成的论文 ;
Kevin Boone关于使用SQL和Prolog来提高大型数据库性能的论文也很有意思;
等 ......