Analysis and optimization of CHR programs

  • Authors:
  • Jon Sneyers

  • Affiliations:
  • Dept. of Computer Science, K.U.Leuven, Belgium

  • Venue:
  • ICLP'05 Proceedings of the 21st international conference on Logic Programming
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

Constraint Handling Rules (CHR) [2] is a high-level, powerful, yet relatively simple “no box” CLP language, embedded in a host language, commonly Prolog. It is based on multi-headed committed-choice rules. Recent implementations of CHR consist of a compiler which translates a CHR program to host language code, and a run-time system implementing the constraint store. Originally, CHR was designed for rapid prototyping of user-de.ned constraint solvers. In the early years of CHR limited attention went to optimized compilation. As a consequence, the reference implementation of CHR [4] comprises a general compilation schema, with only a small number of optimizations. Currently, CHR is increasingly used as a general-purpose programming language in a wide range of applications. Therefore, performance becomes more important, and recently, more advanced compilation optimizations have been proposed [3].