Monash Toy Prolog

The on-line, server-side, interpreter for the programming language Prolog was originally designed by Lloyd Allison at Monash University, Melbourne, Australia and implemented in Pascal. In Fall 2001 Xinhuo Yang, a graduate student in Computer Science at Virginia Tech, created an equivalent client-side version using Javascript that is in use here.

This version has been described as a "toy" version since it does not have all the capabilities of a full Prolog system, and has a slightly different input syntax and output format.

Syntactic changes The "if and only if" operator, usually written as :- can be replaced by the symbol <=.
The "and" operator in rules, usually designated by a comma (",") is written as and.
Restrictions Constants are restricted to strings in which the leftmost character is in lower case, or numeric integers.
However, integers are treated strictly as constants and have no applicable arithmetic operations.
This version does not support lists, assignment (the "is" operator), or arithmetic.
At the moment, this version only works correctly using Netscape or Internet Explorer on the PC.
Output The output is presented in a separate window that redisplays the original program and then lists the query along with all solutions that can be found. It does NOT specifically list the matching of variables and constants in solutions.
YES means that all possible solutions have been found whereas NO means that no solutions could be found.

Examples of valid programs can be found in the "samples tutorial".


Last updated 2002/03/26
© J.A.N. Lee, 2002.