POPL '87 Proceedings of the 14th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Programming pearls: little languages
Communications of the ACM
An Open-Ended Finite Domain Constraint Solver
PLILP '97 Proceedings of the9th International Symposium on Programming Languages: Implementations, Logics, and Programs: Including a Special Trach on Declarative Programming Languages in Education
CSPLIB: A Benchmark Library for Constraints
CP '99 Proceedings of the 5th International Conference on Principles and Practice of Constraint Programming
When and how to develop domain-specific languages
ACM Computing Surveys (CSUR)
Programming finite-domain constraint propagators in Action Rules
Theory and Practice of Logic Programming
The proper treatment of undefinedness in constraint languages
CP'09 Proceedings of the 15th international conference on Principles and practice of constraint programming
ICLP'06 Proceedings of the 22nd international conference on Logic Programming
On the implementation of gnu prolog
Theory and Practice of Logic Programming - Prolog Systems
Tor: extensible search with hookable disjunction
Proceedings of the 14th symposium on Principles and practice of declarative programming
Hi-index | 0.00 |
We present a new constraint solver over finite domains, freely available as library(clpfd) in SWI-Prolog. Our solver has several unique features, which we describe in this paper: Reasoning over arbitrarily large integers, always terminating propagation, and a domain-specific language that concisely expresses the full semantics of constraint reification. The library is entirely written in Prolog and can be easily ported to other Prolog systems that support attributed variables. The constraint solver is fast enough for teaching and research purposes and is already being used in courses at several universities in France, Germany, Italy, Austria and other countries.