Reconciliation of different programming styles will be accomplished through combination of their underlying logics. Constraint logic programming has been the first entirely successful step towards this ambition of combining logics.
Constraints are logical systems specifically tailored to particular theories.
They yield convenient notations for particular problem domains, efficiency thanks to dedicated solvers, and modularity by isolating the solver from the purely logical part of the computation. In the field of automated deduction, constraints have been equally successful for the same reasons. In particular, they allow to cope with deduction control inside the object logic, showing again the power of constraints to combine logical systems. This summer school is the conclusion of the Esprit research project CCL and its successor project CCL2 which pursued since 1992 the combination of computational logics through constraints. The lecture notes have appeared as Springer LNCS 2002 .