Я работаю над приложением на Java, которое должно выполнять некоторые сложные логические выводы в рамках своей функциональности. Я хотел бы закодировать свои логические выводы в Prolog или другом языке программирования логики / ограничений вместо Java, поскольку я считаю, что полученный код будет значительно проще и удобнее в обслуживании.
Я искал в Google встроенные реализации Java на Prolog и нашел их несколько, каждая с очень небольшим количеством документации. Мои (скромные) критерии выбора:
- должен быть встроен в Java (например, может быть включен в мой пакет java вместо того, чтобы требовать установки каких-либо собственных программ во внешних программах)
- простой интерфейс для использования из Java (для запуска выводов, проверки результатов и добавления правил)
- приведите хотя бы несколько примеров того, как его использовать
- не обязательно должен быть Prolog, но и другие языки программирования логики / ограничений с указанными выше критериями также подойдут для моих нужд.
Какие у меня есть варианты, каковы их преимущества и недостатки?