我想听听那些在使用 SWI-Prolog 的语义库方面有实际编程经验的人的意见。
编辑:这个问题的原因是,在与我交谈过的许多有 prolog 经验的人中,他们中的大多数人似乎在他们的学术项目中将它用于一些 AI 编程。我想知道是否有人在生产环境中广泛使用它。因为实时可维护性,性能不同于完成项目以获得好成绩。
您是如何与 Java 等编程语言集成的?
编辑:如答案中所述,似乎 REST 服务或使用 SWI-Prolog 的外部接口是两个最佳选择。
您将 prolog 库用于什么(在语义网络的上下文中)?
可能不会在这里得到明确的答案。可能,这个问题属于语义溢出。我现在有一个合理的想法,并将在更合适的论坛上继续讨论。
使用的是什么开发环境? SWI-Prolog 提供的 Emacs 或其变体似乎是压倒性的答案。
我从不想要一个像 Intellij IDEA for java 这样的 IDE。毕竟我会怎么做,自动完成?我理解基于规则的语言的必要性。再说一次,我讨论开发环境的原因是为了帮助我跟踪我的规则(调试),也可能识别我知识集中的异常。SWI-Prolog 的图形跟踪器满足了第一个要求,但至少在我看来,它显得粗制滥造和有限。但我不相信还有别的。
我真的很喜欢使用 SWI-Prolog 的想法,但如果它影响生产力,我会避开它。
正如答案中提到的,应该使用 Prolog 来执行它擅长的事情。我一直都知道这一点,因此我对与其他编程语言的集成提出了疑问。似乎最大的生产力猪是开发人员的质量,并且处于开发阶段。系统中的问题可能处于休眠状态且不易修复,但可以通过使用一组问题来检查系统的有效性来处理。
注意:当我提到答案时,我指的是@littletable 提供的答案。同样对于对语义网 SWI-Prolog 感兴趣的人来说,thea看起来很有趣。