在工作中,曾討論過使用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