Constraint Handling Rules

From Wikipedia, the free encyclopedia

Constraint Handling Rules (CHR) is a concurrent, declarative programming language for developing constraint programming systems. CHR was created by Thom Frühwirth in 1991.

CHR is not commonly used as a programming language in its own right. Rather, it is used to extend a host language with constraint handling. Current host languages include Prolog, Java and Haskell. Prolog is by far the most popular host language and CHR is included in many Prolog implementations, including SICStus and SWI-Prolog.

A CHR program, sometimes called a constraint handler, is a set of rules for simplification, propagation and "simpagation" (simultaneous simplification and propagation) of constraints.

[edit] Related languages and paradigms

[edit] External links