Gödel as a Meta-Language for Composing Logic Programs

Increasing attention is being paid to Godel, a new declarative programming language aimed at diminishing the gap between theory and practice of programming with logic. An intriguing question is whether or not existing logic programs can be suitably re-used in Godel. We investigate the possibility of employing Godel as a meta-language for re-using and composing existing definite programs. Two alternative implementations of a set of meta-level operations for composing definite programs are presented. The first implementation consists of an extended vanilla meta-interpreter using the non-ground representation of object level programs. The second implementation exploits the meta-programming facilities offered by Godel, which support the construction of meta-interpreters using the ground representation of object level programs.

[1]  Luís Monteiro,et al.  Contextual Logic Programming , 1989, ICLP.

[2]  Krzysztof R. Apt,et al.  Logic Programming , 1990, Handbook of Theoretical Computer Science, Volume B: Formal Models and Sematics.

[3]  Robert A. Kowalski,et al.  Predicate Logic as Programming Language , 1974, IFIP Congress.

[4]  Leon Sterling,et al.  The Art of Prolog , 1987, IEEE Expert.

[5]  Roberto Barbuti,et al.  A Bottom-Up Polymorphic Type Inference in Logic Programming , 1992, Sci. Comput. Program..

[6]  Robert A. Kowalski,et al.  The Semantics of Predicate Logic as a Programming Language , 1976, JACM.

[7]  Patricia M. Hill,et al.  A Parameterised Module System for Constructing Typed Logic Programs , 1993, IJCAI.

[8]  Danny De Schreye,et al.  A sensible least Herbrand semantics for untyped Vanilla meta-programming and its extension to a limited form of amalgamation , 1992, CNKBS.

[9]  Antonio Brogi,et al.  Metalogic for Knowledge Representation , 1991, KR.

[10]  Krzysztof R. Apt Declarative Programming in Prolog , 1993, ILPS.

[11]  Antonio Brogi,et al.  Modular logic programming , 1994, TOPL.

[12]  John W. Lloyd,et al.  The Gödel programming language , 1994 .

[13]  Antonio Brogi,et al.  Semantics of meta-logic in an algebra of programs , 1994, Proceedings Ninth Annual IEEE Symposium on Logic in Computer Science.

[14]  Lee Naish,et al.  Negation and Quantifiers in NU-Prolog , 1986, ICLP.

[15]  Paolo Mancarella,et al.  An Algebra of Logic Programs , 1988, ICLP/SLP.

[16]  Corin A. Gurr,et al.  A self-applicable partial evaluator for the logic programming language Goedel , 1994 .

[17]  Giorgio Levi,et al.  A Formalization of Metaprogramming for real , 1993, ICLP.

[18]  Robert A. Kowalski,et al.  Problems and Promises of Computational Logic , 1990 .

[19]  John Wylie Lloyd,et al.  Foundations of Logic Programming , 1987, Symbolic Computation.