Abstract
Experience using constraint programming to solve real-life problems has shown that finding an efficient solution to the problem often requires experimentation with different constraint solvers or even building a problem-specific constraint solver. HAL is a new constraint logic programming language expressly designed to facilitate this process. It provides semi-optional type, mode and determinism declarations. These allow natural constraint specification by means of type overloading, better compile-time error checking and generation of more efficient run-time code. Importantly, it provides type classes which can be used to specify solver interfaces, allowing the constraint programmer to support modelling of a constraint problem independent of a particular solver, leading to easy “plug and play” experimentation with different solvers. Other interesting features include mutable global variables for implementing a constraint store, and dynamic scheduling and Constraint Handling Rules (CHRs) for combining, extending and writing new constraint solvers.
Original language | English |
---|---|
Title of host publication | Functional and Logic Programming |
Subtitle of host publication | 6th International Symposium, FLOPS 2002 Aizu, Japan, September 15-17, 2002 Proceedings |
Editors | Zhenjiang Hu, Mario Rodriguez-Artalejo |
Place of Publication | Berlin Germany |
Publisher | Springer |
Pages | 47-66 |
Number of pages | 20 |
ISBN (Print) | 3540442332 |
DOIs | |
Publication status | Published - 2002 |
Event | International Symposium on Functional and Logic Programming 2002 - Aizu, Japan Duration: 15 Sept 2002 → 17 Sept 2002 Conference number: 6th https://link.springer.com/book/10.1007/3-540-45788-7 (Proceedings) |
Publication series
Name | Lecture Notes in Computer Science |
---|---|
Publisher | Springer |
Volume | 2441 |
ISSN (Print) | 0302-9743 |
Conference
Conference | International Symposium on Functional and Logic Programming 2002 |
---|---|
Abbreviated title | FLOPS 2002 |
Country/Territory | Japan |
City | Aizu |
Period | 15/09/02 → 17/09/02 |
Internet address |
|