Home

Awesome

Pengines Client for F#

Pengines is an HTTP service for evaluating Prolog build on the foundation of SWI-Prolog. A client creates a Pengine, which is a sandboxed Prolog environment, passes any Prolog facts and rules, then queries the facts and rules to obtain a list of solutions.

Build and Test Pengines.Client on Nuget

Modules

This client is designed with F# consumers in mind, and provides the following modules:

System Requirements

Usage

  1. Create a list of Prolog terms containing your facts and rules
  2. Create a Pengine instance with Pengines.Pengine.createPengine, passing the list of terms and another term for a query to ask.
  3. Iterate through the results.
  4. Destroy the Pengine instance, which will delete the facts and rules. It will timeout and self-destruct after 5 minutes without use if you don't.

Documentation

Please see the user guide for a walkthrough.

There are also tests that show usage of the complete API.