Meta-interpreters and partial evaluation in Parlog

Since logic programs are executable specifications, the main concern of logic programming, producing efficient programs, is tangential to the mainstream of formal methods. A fashionable automatic transformation technique for producing efficient programs, partial evaluation, applied to the concurrent logic programming language Parlog is discussed.

[1]  JACQUES COHEN,et al.  Describing Prolog by its interpretation and compilation , 1985, CACM.

[2]  Keith L. Clark,et al.  PARLOG: parallel programming in logic , 1986, ACM Trans. Program. Lang. Syst..

[3]  John Darlington,et al.  A Transformation System for Developing Recursive Programs , 1977, J. ACM.

[4]  Erik Sandewall,et al.  A Partial Evaluator, and its Use as a Programming Tool , 1976, Artif. Intell..

[5]  Graem A. Ringwood Parlog86 and the dining logicians , 1988, CACM.

[6]  R. Kowalski,et al.  The relation between logic programming and logic specification , 1984, Philosophical Transactions of the Royal Society of London. Series A, Mathematical and Physical Sciences.

[7]  Ehud Shapiro,et al.  Meta interpreters for real , 1988 .

[8]  Saumya K. Debray,et al.  Unfold/fold transformations and loop optimization of logic programs , 1988, PLDI '88.

[9]  Koichi Furukawa,et al.  Partial Evaluation of GHC Programs Based on the UR-set with Constraints , 1988, ICLP/SLP.

[10]  Ehud Shapiro,et al.  Algorithmic Program Debugging , 1983 .

[11]  Ehud Y. Shapiro,et al.  Algorithmic program diagnosis , 1982, POPL '82.

[12]  Kazunori Ueda Making Exhaustive Search Programs Deterministic , 1986, ICLP.

[13]  John P. Gallagher,et al.  Transforming Logic Programs by Specialising Interpreters , 1986, ECAI.

[14]  F. Warren Burton,et al.  Lazy Evaluation of Geometric Objects , 1984, IEEE Computer Graphics and Applications.

[15]  Ehud Y. Shapiro,et al.  Logic Programs With Uncertainties: A Tool for Implementing Rule-Based Systems , 1983, IJCAI.

[16]  Robert W. Floyd,et al.  Assigning Meanings to Programs , 1993 .

[17]  Akikazu Takeuchi,et al.  Parallel Logic Programming Languages , 1986, ICLP.

[18]  Koichi Furukawa,et al.  The Role of Logic Programming in the Fifth Generation Computer Project , 1986, ICLP.

[19]  Matthew M. Huntbach Algorithmic PARLOG Debugging , 1987, SLP.

[20]  Leon S. Levy,et al.  A metaprogramming method and its economic justification , 1986, IEEE Transactions on Software Engineering.