~~NOTOC~~
{{ :research:tclp:tclp-logo.jpg?nolink |TCLP}}
====== What is TCLP ? ======
- A prescriptive type system for Constraint Logic Programming, currently:
* ISO-Prolog
* GNU-Prolog
* Sicstus Prolog 3.8 and its libraries
* Contraints programming libraries of Sicstus Prolog 3.8
- Based on **Typing Constraint Logic Programs** by François Fages and Emmanuel Coquery. Journal of Theory and Practice of Logic Programming TPLP 1(6)., pp. 751-777. November 2001. Available as [[http://pauillac.inria.fr/~fages/Papers/CF01tplp.ps|ps]].\\ TCLP uses 3 kind of polymorphism:
* parametric polymorphism (e.g. : //list(A)//)
* subtyping (e.g. : //list(A) < term//)
* overloading (also called adhoc polymorphism)\\ e.g.: '''-'/2'' can have type //int * int -> int// and type //A * B -> pair(A,B)//
- Usable:
* No type declaration required !
* type inference for predicates
* default types for function symbols
* Extensible to other dialects by providing types for built-ins
TCLP is implemented in Prolog/CHR.
[[download|Download]]
[[http://liris.cnrs.fr/~ecoquery/tclp/doc.html|Documentation]]
Note: the online demo does not work anymore.
===== What's new ? =====
==== 2006-07-20 ====
[[http://liris.cnrs.fr/~ecoquery/tclp/download.html|TCLP 0.4.4]] introduces type aliases.
==== 2005-05-25 ====
[[http://liris.cnrs.fr/~ecoquery/tclp/download.html|TCLP 0.4.3]] & fixed the online demo.
==== 2004-11-16 ====
[[http://liris.cnrs.fr/~ecoquery/tclp/download.html|TCLP 0.4.2]]
==== 2004-02-27 ====
[[http://liris.cnrs.fr/~ecoquery/tclp/download.html|TCLP 0.4.1]]
==== 2004-01-27 ====
TCLP 0.4 is [[http://liris.cnrs.fr/~ecoquery/tclp/download.html|here]] !
==== 2004-01-23 ====
Pre 0.4 release: [[http://liris.cnrs.fr/~ecoquery/tclp/download.html|0.3f]]
==== 2003-09-25 ====
Fixed binary for MacOSX without sicstus installed available [[http://liris.cnrs.fr/~ecoquery/tclp/download.htmltclp-macosx-Darwin-0.3c.tgz|here]].
==== 2003-06-02 ====
Bugfix realease: [[http://liris.cnrs.fr/~ecoquery/tclp/download.html|0.3b]]
==== 2002-10-31 ====
* New version of the documentation]]
* New version of TCLP: [[http://liris.cnrs.fr/~ecoquery/tclp/download.html|0.3]]
* ppc / Darwin (MacOS X) port
==== 2002-09-04 ====
TCLP version 0.2.99g [[http://liris.cnrs.fr/~ecoquery/tclp/download.html|here]]
==== 2002-06-26 ====
TCLP version 0.2.99e [[http://liris.cnrs.fr/~ecoquery/tclp/download.html|here]]
==== 2002-06-18 ====
TCLP version 0.2.99d [[http://liris.cnrs.fr/~ecoquery/tclp/download.html|here]]
==== 2002-04-24 ====
TCLP version 0.2.99, entirely rewritten in Prolog/CHR, with handling of overloading.
Download [[http://liris.cnrs.fr/~ecoquery/tclp/download.html|here]], have a look at the [[http://liris.cnrs.fr/~ecoquery/tclp/doc.html|documentation]].
==== 2001-12-06 ====
Bugfix version [[http://liris.cnrs.fr/~ecoquery/tclp/download.html|0.2.1]]
==== 2001-11-05 ====
New version 0.2
Updated the web site, including a new [[http://liris.cnrs.fr/~ecoquery/tclp/doc.html|documentation section]].
Included an install script
Changed the options in the web interface (see the [[http://liris.cnrs.fr/~ecoquery/tclp/exemples/demo.html|demo]])
==== April 2001 ====
Initial version of TCLP (version 0.1)