Uploaded at Jan 29 15:55:12 2024 (UTC)
Succesfully tested at Jun 22 01:50:09 2024

Curry Package chr-curry

chr-curry

This package contains a library CHR which provides an implementation of Constraint Handling Rules in Curry, an interpreter for CHR rules based on the refined operational semantics of Duck et al. (ICLP 2004), and a compiler into CHR(Prolog).

To use CHR(Curry), specify the CHR(Curry) rules in a Curry program, load it, add module CHR and interpret or compile the rules with runCHR or compileCHR, respectively. This can be done in one shot with

> cypm curry :l MyRules :add CHR :eval 'compileCHR "MyCHR" [rule1,rule2]' :q

The directory examples contains various CHR(Curry) example programs.

Documentation

The structure and implementation of the CHR library is described in the following paper:

M. Hanus: CHR(Curry): Interpretation and Compilation of Constraint Handling Rules in Curry Proc. of the 17th International Symposium on Practical Aspects of Declarative Languages (PADL 2015) Springer LNCS 9131, pp. 74-89, 2015 Online


Download

Checkout with CPM:
cypm checkout chr-curry 3.2.0
Package source:
chr-curry-3.2.0.tar.gz [browse]
Source repository:
https://github.com/curry-packages/chr-curry.git