Turtle: A Constraint Imperative Programming Language

Ideally, in constraint programs, the solutions of problems are obtained by specifying their desired properties, whereas in imperative programs, the steps which lead to a solution must be defined explicitly, rather than being derived automatically. This paper describes the design and implementation of the programming language TURTLE, which integrates declarative constraints and imperative language elements in order to combine their advantages and to form a more flexible programming paradigm suitable for solving a wide range of problems.

[1]  The Indigo Algorithm , 1996 .

[2]  Bjørn N. Freeman-Benson,et al.  Kaleidoscope: A Constraint Imperative Programming Language , 1993, NATO ASI CP.

[3]  M.N. Sastry,et al.  Structure and interpretation of computer programs , 1986, Proceedings of the IEEE.

[4]  Bjørn N. Freeman-Benson,et al.  Indigo: a local propagation algorithm for inequality constraints , 1996, UIST '96.

[5]  Alan Borning,et al.  Constraint hierarchies , 1992 .

[6]  Riccardo Cesaroni The ALMA project , 2000 .

[7]  Raymond Lo,et al.  Register promotion by sparse partial redundancy elimination of loads and stores , 1998, PLDI.

[8]  Bjørn N. Freeman-Benson,et al.  The design and implementation of Kaleidoscope'90-A constraint imperative programming language , 1992, Proceedings of the 1992 International Conference on Computer Languages.

[9]  Krzysztof R. Apt,et al.  The Alma Project, or How First-Order Logic Can Help Us in Imperative Programming , 1999, Correct System Design.

[10]  Slim Abdennadher,et al.  JACK: A Java Constraint Kit , 1999, Electron. Notes Theor. Comput. Sci..

[11]  Peter Pepper Funktionale Programmierung in OPAL, ML, HASKELL und GOFER , 1999, Springer-Lehrbuch.

[12]  Jonathan Rees,et al.  Revised3 report on the algorithmic language scheme , 1986, SIGP.

[13]  Jean-francois Puget,et al.  A C++ implementation of CLP , 1997 .

[14]  Bjørn N. Freeman-Benson Constraint imperative programming , 1992 .

[15]  R. Kent Dybvig,et al.  Revised5 Report on the Algorithmic Language Scheme , 1986, SIGP.