| J. Gallagher. Transforming logic programs by specialising interpreters. In Proceedings of the 7th European Conference on Arti cial Intelligence (ECAI86) , Brighton, pages 109-122, 1986. |
.... the expressive power of logic programs (see e.g. 32, 1, 12] However, the resulting interpretation overhead considerably slows down program execution [2] A natural approach to solving this efficiency problem consists in specialising the interpreter with respect to a given object program [9, 33, 28], thus removing the overhead by performing all interpretation of the object program (in essence parsing the object program) during specialisation. Fully achieving the latter goal however, turns out to be a non trivial task [15, 27, 2, 23] Satisfying results could often only be obtained at the ....
J. Gallagher. Transforming logic programs by specialising interpreters. In Proceedings ECAI'86, pages 109--122, 1986.
....referred to as partial deduction [24] in logic programming) can be exploited to specialise programs so as to improve their efficiency. In particular, the application of partial evaluation techniques for reducing the interpretation overhead in meta programs has been studied by many authors (e.g. [9, 14, 24, 37, 41, 44]) Other authors have pointed out the effectiveness of combining partial evaluation with other program transformation techniques [14, 38, 39] We will describe the design, implementation and application of a program specialiser which has been constructed according to the following requirements. ....
.... the application of partial evaluation techniques for reducing the interpretation overhead in meta programs has been studied by many authors (e.g. 9, 14, 24, 37, 41, 44] Other authors have pointed out the effectiveness of combining partial evaluation with other program transformation techniques [14, 38, 39]. We will describe the design, implementation and application of a program specialiser which has been constructed according to the following requirements. 3 (1) The specialiser should be targeted to improving the efficiency of the meta interpreter M . Rather than aiming at designing a general ....
[Article contains additional citation context not shown here]
J. Gallagher. Transforming Logic Programs By Specialising Interpreters. In ECAI-86, Proceedings of the 7th European Conference on Artificial Intelligence, Brighton, England, pages 313--326, 1986.
.... the expressive power of logic programs (see e.g. 36, 1, 18] However, the resulting interpretation overhead considerably slows down program execution [4] A natural approach to solving this efficiency problem consists in specialising the interpreter with respect to a given object program [12, 37, 32], thus removing the overhead. Fully achieving the latter goal however, turns out to be a non trivial task [4, 28] Satisfying results could often only be obtained at the cost of using not fully automatic and or ad hoc techniques [20] In a recent paper [7] Brogi and Contiero address ....
J. Gallagher. Transforming logic programs by specialising interpreters. In Proceedings ECAI'86, pages 109--122, 1986.
....concluding remarks completes the report. The reader is supposed to be familiar with elementary logic (Prolog) programs and the basic concepts of algebraic specification. Related work is presented by, among others, Komorowski [Kom90, KT94] Sahlin [Sah91] Alexandre et al. ABFQ92] and Galagher [Gal86]. What is different in our work is the algebraic approach, 2 2. TRANSFORMATIONS OF LOGIC PROGRAMS opposite to the more or less Prolog like approach in the cited work. In [EGP95] a program transformation system for a functional programming language is specified in ASF SDF. We conclude this ....
J. Gallagher. Transforming logic programs by specialising interpreters. In B. du Boulay, D. Hogg, and L. Steels, editors, Advances in Artificial Intelligence - II, pages 313--326. North Holland, 1986.
....referred to as partial deduction [21] in logic programming) can be exploited to specialise programs so as to improve their efficiency. In particular, the application of partial evaluation techniques for reducing the interpretation overhead in meta programs has been studied by many authors (e.g. [14, 21, 29, 35]) We will describe the design, implementation and application of a program specialiser which has been constructed according to the following requirements. 1) The specialiser should be targeted to improving the efficiency of the meta interpreter M . Rather than aiming at designing a general ....
....programming, since the whole extension is expressed in terms of standard logic (meta )programs and the results of [26] can be directly exploited, as shown in Sect. 4. The problems of partially evaluating meta programs interpreting a single object program have been studied by many authors, e.g. see [14, 29, 35]. These works extensively deal with the use of Prolog s non logical features for writing partial evaluators. Gallagher [14] highlights the advantages of using general program specialisation techniques rather than only partial evaluation. For instance, it is shown how predicate creation and ....
[Article contains additional citation context not shown here]
J. Gallagher. Transforming Logic Programs By Specialising Interpreters. In ECAI-86, Proceedings of the 7th European Conference on Artificial Intelligence, Brighton, England, pages 313--326, 1986.
....generated by partial evaluation [1, 14, 25, 27, 30, 33, 61] In some cases, the compilation is from a language to itself. In this case the purpose is to make certain computation strategies explicit (e.g. continuation passing style) or to add extra information (e.g. for debugging) to the program [20, 42, 83, 93]. Many types of programs, e.g. scanners and parsers, use a table or other data structure to control the program. It is often possible to achieve speed up by partially evaluating the table driven program with respect to a particular table [7, 78] However, this may produce very large residual ....
J. Gallagher. Transforming logic programs by specialising interpreters. In ECAI-86. 7th European Conference on Artificial Intelligence, Brighton Centre, United Kingdom, pages 109--122. Brighton: European Coordinating Committee for Artificial Intelligence, 1986.
....to identify those predicates for which clause 2 is undefined or explicit interpretation is not required. A major problem with the use of meta programs for interpreting other Prolog programs is the loss of efficiency caused by interpreting the object programs indirectly through a meta program. Gallagher in (1986) and Takeuchi and Furukawa in (1986) showed that most of the overhead due to meta programming in Prolog could be removed by partially evaluating the meta program with respect to a specific object program. This important development and other research concerning program transformations en10 ....
....dual reading more effectively. The overhead of complex procedural semantics can sometimes be drastically reduced if an interpreter for the semantics is available, written as a meta program. In this case the Futamura projections can be applied to reduce the overhead. This method was advocated by Gallagher (1986) and illustrated on coroutining programs. Gurr (1993) also shows the compilation of a coroutining example. The work on compiling control (Bruynooghe, De Schreye Krekels 1989) is similar in its aims, but is not based explicitly on meta programming. The use of meta programming combined with ....
Gallagher, J. (1986), Transforming logic programs by specialising interpreters, in `Proceedings of the 7th European Conference on Artificial Intelligence (ECAI-86), Brighton', pp. 109--122.
....used to extract these types of answers. 3 Partial Evaluation of the Theorem Prover The theorem prover can be partially evaluated with respect to a given object theory. This is the same idea as partially evaluating a meta interpreter for logic programs with respect to a fixed object program [5] [7], 23] The partial evaluator (called SP) used for our experiments is fully described in [6] In principle we could use any partial evaluator based on the theory in [14] augmented with a method of renaming predicates in the final partially evaluated program) In the next sections, the inherent ....
J. Gallagher. Transforming logic programs by specialising interpreters. In ECAI-86, Proc. of the 7th European Conference on Artificial Intelligence, Brighton, England, pages 109-- 122, 1986.
....operational semantics, by specialising an interpreter defining the required semantics. To name a few possibilities, meta programs could be used to specify interpreters for virtual machines, abstract interpretations [23] language extensions [24] and parallel or non standard execution strategies [8] [2] 1.2 Future Applications More speculatively, a further range of applications is suggested by regarding proof procedures for various formal logics as meta programs. Usually in such cases take first order logic as an example one does not readily regard the proof procedure as a language ....
Gallagher, J.; Transforming Logic Programs by Specialising Interpreters; in ECAI-86, Proc. of the 7th European Conference on Artificial Intelligence; Brighton, England; pages 109-122, 1986.
....this is not directly possible, but we can extract orderindependent representations from a computation that was constructed using a specific reduction strategy. 2. 1 Trace terms in Logic Program Computations The idea of using traces of logic program derivations has appeared in various forms, e.g. [Gal86], Sha87] GB91] but these representations employed sequences of clauses used in SLD derivations. Thus the SLD computation rule was also encoded in these representations. The method to be described here is independent of the computation rule, and this has certain advantages as will be seen. ....
J. Gallagher. Transforming logic programs by specialising interpreters. In Proceedings of the 7th European Conference on Artificial Intelligence (ECAI86) , Brighton, pages 109--122, 1986.
No context found.
J. Gallagher. Transforming logic programs by specialising interpreters. In Proceedings of the 7th European Conference on Arti cial Intelligence (ECAI86) , Brighton, pages 109-122, 1986.
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC