2012-03-30 1 views
4

Я хочу запустить код Prolog с помощью Java. Я нашел некоторые двигатели, но единственное, что казалось легким в использовании, было w-prolog. Однако, когда я попытался использовать его, я понял, что он не поддерживает простые вещи, такие как списки или динамические утверждения.Как я могу читать и запускать код Prolog на Java с помощью простого движка?

Я также видел tuprolog, но он казался намного более тяжелым, чем я хотел, и мне казалось, что мне нужно воссоздать весь мой код в синтаксисе Java (разделение терминов, фактов и т. Д.).

Я просто хочу запустить пролог из файла и прочитать результат на Java.

Кто-нибудь знает, как я могу это сделать? Позволяет ли tuprolog сделать это простым способом?

ответ

4

думаю есть Jekejeke Prolog возможно. Это 100% Java-журнал Prolog. Хотя, будучи коммерческим решением, оно может оказаться непригодным для вас.

+0

мне удалось с ним работать. Однако я не могу найти способ использовать утверждения (движок говорит, что утверждений не существует). –

+0

Хорошо, выяснилось, что assert depecrated и assertz работает. У меня есть небольшая проблема с возвратом вывода, но я думаю, что смогу с этим справиться. Благодаря :). –

+2

@Tiago Almeida: В ISO Prolog есть 'asserta/1' и' assertz/1'. Нет 'assert/1'. Системы сильно отличались тем, что они делали для 'assert/1'. – false

3

Другой вариант - особенно интересный для азиатских стран может быть Minerva.

3

SWI-Prolog JPL - это двунаправленный интерфейс Java/Prolog, который работает достаточно хорошо. Я использовал это совсем немного (в основном, вызывая Prolog с Java, но также и наоборот), и производительность кажется довольно хорошей.

Смежные вопросы