The Evolution of Rules Languages

HaleyRules is based on Haley Eclipse, a rule syntax language that enjoys over 25 years of development and evolution.

Surprisingly, most rule languages used in developing expert systems have a common origin in the "Official Production Systems" (OPS) developed during the seventies at Carnegie Mellon University by several PhD students of Dr. Allen Newell.

OPS5 from Carnegie Mellon University

OPS5 was the first production system language based on the Rete Algorithm and the first AI language to succeed in commercial application when Dr. John McDermott implemented a rule-based configurer of VAX computer systems for Digital Equipment Corporation. R1 was originally implemented in Lisp but was later ported to a Bliss version of OPS5 for performance reasons, after which DEC renamed R1 to XCON. XCON was tremendously successful and led to the development of a number of additional, substantial expert systems using OPS5, several of which were implemented by Paul Haley.

  • The syntax of OPS5 uses parentheses, '(', ')', as its principle delimiters, unlike C, C++, or Java which use semicolons (';') and braces '{','}'.
ART from Inference Corporation

In 1984, Paul Haley joined Inference Corporation where he became Chief Scientist while directing the development of the Automated Reasoning Tool (ART) and implement its inference engine. ART extended the Rete Algorithm to support:

  • Truth maintenance and logic programming
  • Automatic subgoaling and backward chaining
  • Much more expressive pattern matching language
  • Support for arbitrary procedural functions and predicates
  • Much more expressive knowledge representation capabilities
  • Logical uantifiers (other than and and not)
  • a variety of other improvements beyond OPS5

Although the ART syntax is much more expressive than that of OPS5, the ART syntax was designed as an incremental improvement beyond OPS5.

CLIPS by NASA

By 1985 NASA had standardized their AI development on ART but needed an implementation to run on IBM and Macintosh personal computers. As a result, the Software Technology Branch at Johnson Space Center cloned the forward chaining capabilities and syntax of ART and introduced the "C Language Integrated Production System" (i.e., CLIPS) into the public domain. Government funding for development or support of CLIPS was discontinued several years ago.

CLIPS is rarely used for commercial purposes due to the lack of continued funding and other, practical, commercial considerations, especially when compared with the functional advantages of inference engines available from Haley Systems and other companies. Nonetheless, CLIPS remains popular for college-level courses on expert systems. The logical choice for the textbook would be Expert Systems: Principles and Programming.

ART-IM from Inference Corporation

Following the distribution of NASA's CLIPS, Inference Corporation implemented a forward-chaining only derivative of ART/CLIPS called ART-IM, subsequently renamed "ART*". The ART inference engine remains available from MindBox which spun out of Brightware which Inference spun off prior to going public in 1995.

JESS by Sandia National Laboratories

Developed by an employee of Sandia National Laboratories, JESS is a Java version of NASA's CLIPS that has added a few more of the capabilities and performance characteristics of contemporary, commercial rule engines. Its syntax remains roughly CLIPS compatible but has added some of the extensions first introduced in Eclipse by The Haley . JESS is not public domain or open-source like CLIPS but can be download at no charge for academic use. Therefore, it is also popular for college-level courses on rule-based programming, where the obvious choice for the textbook would be Jess in Action: Rule-Based Systems in Java.

Haley Eclipse from Haley Systems, Inc.

In 1989, Paul Haley founded Haley Systems (f.k.a. The Haley ) and developed Haley Eclipse (not to be confused with the Eclipse App. Dev. IDE Software).

  • Haley Eclipse, as deployed in HaleyRules inference engines, supports an extended version of the CLIPS syntax.
  • HaleyRules is the only inference engine that uses the Rete Algorithm to support both forward and backward chaining.
  • HaleyRules goes beyond the limitations of CLIPS, JESS, and other rules engines by sharing one knowledge base for unrivaled scalability and multi-threaded performance.