Catalogue of Artificial Intelligence Techniques


Jump to: Top | Entry | References | Comments

View Maths as: Images | MathML

Pattern Directed Languages

Keywords: Algol, CONNIVER, Micro-PLANNER, OPS5, PLANNER, QA4, QLisp, conflict resolution

Categories: Inference and Reasoning , Programming Languages

Author(s): Paul Brna

This class of languages is Data-driven. That is, the current context is used to determine which procedure to call next--sometimes called Pattern Directed Invocation. This is opposed to the fixed sequence of procedure calls in languages like FORTRAN, Algol etc. There is a corresponding necessity for suitable Pattern Matching to take place. Example languages include PLANNER (and Micro-PLANNER), CONNIVER, QLisp (and QA4), Prolog and Production Rule Systems like OPS5. Different styles of reasoning are possible: OPS5, for example, uses Forward Chaining while Prolog uses Backwards Chaining. Also, different styles of pattern matching are used: PLANNER uses an extremely simple algorithm while QLisp can match pattern variables to arbitrary Lisp structures. The problem of conflict resolution also arises when, in principle, one pattern is suitable for several different procedure invocations. This is solved in Prolog by using a fixed search strategy and in OPS5 with a simple conflict resolution algorithm.



Add Comment

No comments.