CHR for SWI-Prolog ==================

Authors and license

This package contains code from the following authors. All code is distributed under the SWI-Prolog conditions with permission from the authors.

Files and their roles:

# library(chr)			chr_swi.pl
Make user-predicates and hooks for loading CHR files available
to the user.

# library(chr/chr_op)
Include file containing the operator declaractions

# library(chr/chr_translate)
Core translation module.  Defines chr_translate/2.

# library(chr/chr_debug)
Debugging routines, made available to the user through
library(chr).  Very incomplete.

# library(chr/hprolog)
Compatibility to hProlog.  Should be abstracted.

# library(chr/pairlist)
Deal with lists of Name-Value.  Used by chr_translate.pl

Status

Work in progress. The compiler source (chr_translate.pl) contains various `todo' issues. The debugger is almost non existent. Future work should improve on the compatibility with the reference CHR documentation. Details on loading CHR files are subject to change.

Prolog files

a_star.plShow source
binomialheap.plShow source
builtins.plShow source
chr_compiler_errors.plShow source
chr_compiler_options.plShow source
chr_compiler_utility.plShow source
chr_hashtable_store.plShow source
chr_messages.plShow source
chr_runtime.plShow source
chr module/1True when Module is a CHR module.Source
current_chr_constraint/1True if Constraint is a constraint associated with the qualified module.Source
find_chr_constraint/1True when Constraint is a currently known constraint in any known CHR module.Source
chr_translate.plShow source
clean_code.plShow source
find.plShow source
guard_entailment.plShow source
listmap.plShow source
pairlist.plShow source