This tutorial provides an introduction to programming in ECLiPSe.
It assumes a broad understanding of constrained optimisation
problems, some background in mathematical logic and in
programming languages.
The tutorial tries to cover most of the basic aspects of using ECL^{i}PS^{e}:
underlying concepts, the programming language, library functionality
and interaction with the system.
A few topics have been left out of this tutorial and are covered
elsewhere: The Embedding Manual explains how to embed
ECL^{i}PS^{e} applications into other software environments, and the
Visualisation Manual describes the use of the constraint
visualisation facilities.
All the features described in this tutorial are documented in more
detail in the ECL^{i}PS^{e}User Manual, Constraint Library
Manual and in particular the Reference Manual.
A methodology for developing large scale applications with ECL^{i}PS^{e}
is presented in the document
Developing Applications with ECL^{i}PS^{e} by Simonis.
For an informal introduction to combinatorial optimisation
and constraint programming see the article
Constraint Programming by Wallace.
The most closely related books on the subject are the
textbook Programming with Constraints by
Marriott and Stuckey [17]
(which contains ECL^{i}PS^{e} examples),
and the seminal book
Constraint Satisfaction in Logic Programming [27]
by Van Hentenryck.
A small selection of textbooks on related subjects includes:
Foundations of Constraint Satisfaction by Tsang [25],
Model Building in Mathematical Programming by Williams [30]
and
Prolog Programming for Artificial Intelligence by Bratko [6].
⊙
References to more detailed documentation are marked like this.
⊗
Notes that can be skipped on first reading are marked like this.