最快的双向 java prolog 实现
我正在尝试在当前基于代理的模拟之上使用 java-prolog 层。我正在运行 Mac OS X Snow Leopard 和 Netbeans 6.9,并尝试使用 swi-prolog 中的 JPL,但是由于库及其路径的问题,我尚未成功运行测试。我需要一个非常快速的实现,我想知道是否有人对双向 java-prolog 接口有任何基准测试或个人经验。
I am trying to use a a java-prolog layer on top of my current agent-based simulation. I am running Mac OS X Snow Leopard and Netbeans 6.9 and tried to use JPL from swi-prolog however I haven't managed to run a test successfully due to problems with the libraries and their paths. I need a very fast implementation and I was wondering if anyone has any benchmarks or personal experience with bidirectional java-prolog interfaces.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
2007 年,我运行了经典的 Prolog 基准测试(诸如
queens
、tak
、qsort
、nrev
等程序)针对用 Java 编写的四个 Prolog 实现:tuProlog、JIProlog、JLog 和 JavaLog。总体上最快的实现是 JLog。所有详细信息均可在SAC 2008 接受的文章中找到。我建议你也看看jTrolog,它是在我测量性能后正式诞生的其他基于 Java 的 Prolog 引擎。也许 PrologCafe 也可能会引起一些兴趣。
但请注意,我不知道其中任何一个的维护状态。如果您需要各自作者的某种支持,请仔细选择。
In 2007 I ran the classic Prolog benchmarks (programs such as
queens
,tak
,qsort
,nrev
and so on) against four Prolog implementations written in Java: tuProlog, JIProlog, JLog and JavaLog. The overall fastest implementation was JLog. All details can be found in an article accepted at SAC 2008.I'd suggest you have a look also at jTrolog, which was officially born after I measured the performance of the other Java-based Prolog engines. Perhaps PrologCafe may be of some interest, too.
Note, however, that I am not informed about the maintenance state of any of them. Choose carefully if you need some kind of support by their respective authors.
您是否正在寻找一种在 java 进程和 prolog 进程之间有效交换消息的方法?
我可能会推荐 Google 的 Protocol Buffers,它提供了一种语言中立且高效的方法,用于在不同系统之间交换消息...
http://code.google.com/p/protobuf/
http://www.swi-prolog.org/pldoc/package/protobufs.html
Are you looking for a way to exchange messages efficiently between a java process and a prolog process?
I might recommend Google's Protocol Buffers, which provides a language-neutral and efficient means for exchanging messages between different systems...
http://code.google.com/p/protobuf/
http://www.swi-prolog.org/pldoc/package/protobufs.html