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
The tutorial tries to cover most of the basic aspects of using ECLiPSe:
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
ECLiPSe applications into other software environments, and the
Visualisation Manual describes the use of the constraint
All the features described in this tutorial are documented in more
detail in the ECLiPSeUser Manual, Constraint Library
Manual and in particular the Reference Manual.
A methodology for developing large scale applications with ECLiPSe
is presented in the document
Developing Applications with ECLiPSe 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 
(which contains ECLiPSe examples),
and the seminal book
Constraint Satisfaction in Logic Programming 
by Van Hentenryck.
A small selection of textbooks on related subjects includes:
Foundations of Constraint Satisfaction by Tsang ,
Model Building in Mathematical Programming by Williams 
Prolog Programming for Artificial Intelligence by Bratko .
References to more detailed documentation are marked like this.
Notes that can be skipped on first reading are marked like this.