新的Web应用程序可能需要在将来添加人工智能(AI),例如使用ProLog。我知道它可以在Java环境中完成,但我想知道现代Web语言(如Ruby或Python)的机会。后者被认为是“更科学”(至少在那种环境中使用),但使用谷歌似乎是两者的初步ProLog实施。
有关现代(开源)网络语言(如Python或Ruby)与AI结合的任何建议吗?
答案 0 :(得分:8)
语言的选择完全无关紧要,所有其他条件都相同。
如果您正在尝试执行X并且在语言Y中有一个库,并且与基于Web的框架很好地匹配,那么请使用它。
如果不了解您感兴趣的人工智能的哪些特定领域,那么这个问题就太模糊了,无法以更具体的方式回答。
答案 1 :(得分:1)
如果您喜欢Prolog,请查看PySWIP。它将声明性逻辑语言Prolog与过程通用语言Python集成在一起,它允许您像以前一样在Python中以程序方式编写Web应用程序,但是它与Prolog有一个基础关系数据库。
答案 2 :(得分:0)
如果您使用JRuby或Jython,则可以使用现有的Java库,并使用Ruby或Python作为Web应用程序。 Rails适用于JRuby,我用它来编写重用现有Java代码的应用程序。不确定在Jython上运行哪些Python框架。
答案 3 :(得分:0)
您可能还会发现PyKE有用。
编辑:
“Pyke介绍了一种逻辑编程形式(灵感来自Prolog) 通过提供基于知识的推理引擎来实现Python社区 (专家系统)用100%Python编写。
与Prolog不同,Pyke与Python集成,允许您调用Pyke 来自Python并在其中混合Python语句和表达式 你的专家系统规则。“
对于BiggAl来说,他显然懒得阅读链接页面上的前两句话。
答案 4 :(得分:0)
你也可以使用Scala(它有点功能并在JVW上运行)和现有的用于web-stuff的Lift框架。