Duration: Jun. 1996 - Jun. 1999
Summary: We propose the design and implementation in practical systems of extensions to logic programming which increase its expressive power in order to make this programming paradigm even more suitable for advanced application development. We propose to pursue two main lines of research: In the first line we will develop a compiler for multi-paradigm logic programming (including concurrency, parallelism, constraints, functions, object orientation, encapsulation, etc.), CIAO, using novel implementation techniques involving compilation to a simple kernel language. One of the main aims of the CIAO system is to simplify the development of distributed applications, using wide-area networks like the Internet. In this line we will also use the power of commercial multiprocessors in order to obtain improved program performance using new automatic parallelization techniques. In the second line we attempt to achieve a declarative language standard, provisionally called CURRY, combining the main ideas in logic-functional programming and some more recent developments, such as higher order characteristics, lazy evaluation, constraints, evaluation mode selection, encapsulated search, object orientation, etc. These elements allow replacing many of the ``impure'' components in Prolog, which makes it possible for CURRY to be the basis for improving the declarative nature of logic languages. The extensions proposed will be complete, including the component design, semantic aspects, analysis and optimization, and the implementation techniques required to provide efficient executions.

The project is a combined effort of the Department of Artificial Intelligence and the Department of Languages and Systems of the Technical University of Madrid.

<webmaster@clip.dia.fi.upm.es> Last modified: Fri May 9 17:49:04 1997