在工作中,曾讨论过使用prolog作为Web应用程序中规则引擎的后端。这将如何与现有系统绑定?是否有可用于允许调用prolog模块的其他语言的prolog库。Prolog网页编程
回答
对于SWI-Prolog,你可以看看Thea2这对于SWRL支持序言,也可以通过连接到外部推理JPL如HermiT为OWL/SWRL推理,或Pellet等
在个人请注意,过去我多次使用JPL来启用带有SWI-Prolog后端的网络应用程序,如果您打算使用可在JVM上执行的语言(如Java,Groovy,或者Scala,例如。另一种选择是将SWI-Prolog挂接到C或C++ environment,我还没有尝试使用网络应用程序。
如果您的网络应用程序使用另一种不能在JVM或C/C++上运行的开发语言,那么这可能不适合您,因为它似乎有点难以连接将SWI-Prolog环境运行到其他语言环境。然而,这就是说,我们已经成功实施了一个使用HTTP的SWI-Prolog-to-anything桥梁,但是如果性能是必需的,这并不理想。
我不确定你在找什么,但你可能想看看Yield Prolog ,它允许使用Python,C#或Javascript嵌入Prolog代码到程序中。没有涉及的API。我还没有用过这个,但它可能适合你想要做的事情。
以我的理解Yield Prolog是基于JavaScript的,你会在网络服务器上运行吗?但对于前端集成,我想这会很好。 – 2012-09-06 09:56:44
由于Javascript中的服务器端编程变得越来越受[node.js](https://nodejs.org/)的欢迎,因此这可能是用于在客户端或服务器端集成Prolog处理的有用工具。 – sharky 2015-04-21 23:08:35
LPA Prolog的已被广泛应用于各种商业的基于Web的应用程序,最显着的商业诚信的业界领先的文档组件产品,DealBuilder内
LPA提供deliverying基于Web的应用程序的各种架构 - 其中有些是在VisiRule部内shocased对LPA的网站 www.lpa.co.uk
克里夫
SWI-Prolog有包括一个完全合理的HTTP服务器/网络框架。
你可以通过HTTP与它通话。
有解析XML/SGML和JSON,以及ODBC
JSON以及一些数据库连接,似乎对web很重要。不幸的是,这里没有列出:http://en.wikipedia.org/wiki/Comparison_of_Prolog_implementations#Operating_system_and_Web-related_features – 2015-05-09 12:42:29
我猜网页嵌入的一个重要前提,特别是在 服务器端工具,是Prolog的系统多theading能力。在 至少你可能需要这个,如果你想同时服务多个 用户。
然后,您可以选择纯粹的解决方案,其中由Prolog本身生成和维护的页面为 。或者对于混合解决方案, ,其中Prolog系统仅用于某些业务逻辑,另一个 编程语言用于演示和/或存储。
以下维基对照表给出的Prolog系统的概述和 无论是多线程和/或支持一些Web编程:
Comparison of Prolog implementations,
Operating system and Web-related features
对于我自己采取对这个问题我有设置了一个小教程 ,该教程显示Jekejeke Runtime用于服务器端 业务逻辑。 Jekejeke Runtime是相当灵活的,你不能 只有多个线程,你也可以有多个 知识库。
Jekejeke Runtime,
Deployment Methods
的Jekejeke运行系统是例如目前在生产 销售系统中,通过一些定制的读/写锁,它使知识基础,甚至远程 热插拔管理员无需重新启动 的web上下文。遗憾的是,目前还没有报道。
再见
SWI-Prolog web框架是多线程的。我用它来申请我每天服务10^7左右的应用程序。 – Anniepoo 2015-05-08 19:28:48
是的,这也是为什么SWI-Prolog在我的文章中给出的Wiki表链接中列出的原因。同样的Wiki比较表有一列“多线程”,还有与网络相关的列。 – 2015-05-09 12:36:38
- 1. 在Prolog编程
- 2. 网页编程
- 3. p2p网页编程
- 4. 编程与网页
- 5. Python网页编程
- 6. 以(远程)网页编程
- 7. CLP Prolog - 逻辑编程
- 8. 初学者prolog编程
- 9. prolog编程有人吗?
- 10. 编程监控网页
- 11. 在Ada的网页编程?
- 12. 网页编程简介
- 13. 在Prolog约束编程中标记
- 14. 编程Prolog中的二次公式
- 15. Prolog兼容性层 - 可用编程库
- 16. Prolog逻辑拼图和约束编程
- 17. Prolog游戏编程评估板
- 18. 在网页浏览器中以编程方式缩小网页
- 19. Prolog和php编码
- 20. Prolog编译错误?
- 21. prolog编写规则
- 22. Prolog编译器.Net
- 23. 以编程方式搜索网页?
- 24. Java套接字和网页编程
- 25. 一般网页编程/设计问题:?
- 26. 用Java开始网页编程
- 27. 刷新网页编程 - JavaScript的
- 28. 以编程方式重定向网页
- 29. 以编程方式读取网页
- 30. 以编程方式缩小网页
只是出于好奇:您的工作场所有多少人实际上已经完全接受了Prolog?这似乎是一个有趣的选择,商业智慧。 – 2010-09-24 21:13:48