Skip to content
JavaScript Haskell CoffeeScript Other
Find file
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Prolog for JCU

This package was developed to demonstrate the ideas behind the Prolog language. It uses a very small interpreter (Language.Prolog.Nanoprolog) which can be run on its own.

This package contains an environment constructed for the Junior College at Utrecht University. It provides a simpel environment in which rules can be defined, and proofs can be constructed interactively. The software can be installed on a server, so students do not have to install anything on their own machines.

Installation instructions

This software has been tested with Haskell Platform 2011.2.0.1, 32-bit on Mac OS X 10.6.7, using MongoDB 1.8.1. MongoDB was installed using Homebrew.

Install MongoDB

To install MongoDB using Homebrew, issue the following command:

brew install mongodb

When the installation is finished, follow the instructions on the screen. The application assumes that MongoDB listens on localhost:27017.

Install dependencies

The JCU packages relies on the snap-auth and snap-extension-mongodb packages, both of which are not yet available on hackage. If you have not installed them yet, issue a make deps command. The latest version of these packages will be fetched from git and be installed. A git client must be installed for this to work.

Install the JCU package

To install the JCU package in development mode, issue a make command in the project root. To install it in production mode, just issue cabal install in the project root.

Usage instructions

Before you can use the application, you have to start it and register an account.


After installation, just issue the


command. If you want to run the application in development mode, you should issue this command in the root directory of the project.


The application can be viewed from your browser on the following address:



Before you can use the application, you have to register an account. This can be done at


Your username must be a valid email address and your password needs to be at least six characters long.

Logging in

After signup, you can log in at


using the credentials you have just entered during registration.


After logging in, the main screen is visible. It is divided in two sections. On the left-hand side we have the proof tree and on the right-hand side the list of rules. (TODO: Finish this bit)

Something went wrong with that request. Please try again.