
What is TCLP ?
- A prescriptive type system for Constraint Logic
Programming, currently:
- ISO-Prolog
- GNU-Prolog
- Sicstus Prolog and its libraries
- Contraints programming libraries of Sicstus Prolog
-
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 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
- No type declaration required !
What's new
- 2006-07-20
- TCLP 0.4.4 introduces type aliases.
- 2005-05-25
- TCLP 0.4.3 & fixed the online demo.
- 2004-11-16
- TCLP 0.4.2
- 2004-02-27
- TCLP 0.4.1
- 2004-01-27
- TCLP 0.4 is here !
- 2004-01-23
- Pre 0.4 release: 0.3f
- 2003-09-25
- Fixed binary for MacOSX without sicstus installed available here.
- 2003-06-02
- Bugfix realease: 0.3b
- 2002-10-31
-
- New version of the documentation
- New version of TCLP: 0.3
- ppc / Darwin (MacOS X) port
- 2002-09-04
TCLP version 0.2.99g here
- 2002-06-26
TCLP version 0.2.99e here
- 2002-06-18
TCLP version 0.2.99d here
- 2002-04-24
-
TCLP version 0.2.99, entirely rewritten in Prolog/CHR, with handling of overloading.
Download here, have a look at the documentation.
- 2001-12-06
-
Bugfix version 0.2.1
- 2001-11-05
-
New version 0.2
Updated the web site, including a new documentation section.
Included an install script.
Changed the options in the web interface (see the demo).
- April 2001
Initial version of TCLP (version 0.1)

