| M. Marchiori. The Functional Side of Logic Programming. In Proceedings of the Seventh International Conference on Functional Programming Languages and Computer Architecture (FPCA'95), pages 55-65, La Jolla, California, 1995. ACM Press. |
....Side of Logic Programming Sandro Etalle and Jon Mountjoy Universiteit Maastricht ealle cs.unimaas.nl University of Amsterdam 1 Introduction The possibility of translating logic programs into functional ones has long been a subject of investigation. Among the di erent proposals we nd [9, 10, 8, 12, 13, 15]. Common to all the approaches mentioned is that the original logic program, in order to be translated, needs to be well moded and this has led to the common understanding that these programs can be considered to be the functional part of logic programs. This is con rmed by the following ....
....to all the approaches mentioned is that the original logic program, in order to be translated, needs to be well moded and this has led to the common understanding that these programs can be considered to be the functional part of logic programs. This is con rmed by the following statement in [10]: the class of functionally moded (well moded and simply moded) programs can be rightly considered the functional core of logic programs . Well moded programs have, among other features, a straightforward left toright data ow model (see [2] and prohibit the use of logical variables to ....
M. Marchiori. The Functional Side of Logic Programming. In Proceedings of the Seventh International Conference on Functional Programming Languages and Computer Architecture (FPCA'95), pages 55-65, La Jolla, California, 1995. ACM Press.
....instantiated structures. Logic programs which employ the abovementioned methodology are neither well moded nor well typed (see [1] this implies that for them one cannot apply any of the different transformations systems devised for mapping logic programs into functional programming (e.g. [20, 21, 9, 29, 30, 35]) In this section we introduce a source to source transformation to map a logic program that progressively instantiates a structure into a quasi well typed program. Such a logic program can be transformed into an efficient functional program. The idea underlying the transformation is the ....
....the one of well modedness, so to have a formal proof of the correctness of this stage one should extend their result. We do not do this here: our goal is not that of proving similarities between the Logic and the functional paradigms (which is by now an extensively studied area, see for instance: [20, 21, 9, 29, 30, 35]) Instead our aim is to develop a methodology for program development, showing how effective it can be. Furthermore this transformation step is so literal that its correctness can easily be checked by comparing the original and the transformed programs. Here our primary concern is the ....
M. Marchiori. The functional side of logic programming. In 7th Functional Programming Languages and Computer Architecture (FPCA), pages 55--65, La Jolla, California, Jun 1995. ACM, New York.
....instantiated structures. Logic programs which employ the abovementioned methodology are neither well moded nor well typed (see [11] This implies that for them one cannot apply any of the di erent transformations systems devised for mapping logic programs into functional programming (e.g. [12, 13, 14, 15, 16, 17]) In this section we introduce a source to source transformation to map a logic program that progressively instantiates a structure into a quasi well typed program. Such a logic program can be transformed into an ecient functional program. The idea underlying the transformation is the ....
.... the pograms we allow and the ones allowed in [15] lies in the presence of input positions of type not ground, this allows a 12 do this here: our goal is not that of proving similarities between the Logic and the functional paradigms (which is by now an extensively studied area, see for instance: [12, 13, 14, 15, 16, 17]) Instead our aim is to develop a methodology for program development, showing how e ective it can be. Furthermore this transformation step is so literal that its correctness can easily be checked by comparing the original and the transformed programs. Here our primary concern is the eciency ....
M. Marchiori. The functional side of logic programming. In 7th Int. Conf. Functional Programming Languages and Computer Architecture (FPCA), pages 55-65, La Jolla, California, Jun 1995. ACM, New York.
.... functional programming) D.1.6 (logic programming) D.3.2 (language classi cations) F.3.3 (studies of program constructs) programs) 1 Introduction The possibility of translating logic programs into functional ones has long been a subject of investigation. Among the di erent proposals [Mar94, Mar95, GW92, RKS98, Red84, vR97]. Such systems are usually devised for one of the following purposes: for proving program properties, for providing better insight on the relation between functional and logic languages, or to a minor extent for improving program performance. Common to all the approaches mentioned is that the ....
....to all the approaches mentioned is that the original logic program, in order to be translated, needs to be well moded and this has led to the common understanding that these programs can be considered to be the functional part of logic programs. This is con rmed by the following statement in [Mar95]: the class of functionally moded (well moded and simply moded) programs can be rightly considered the functional core of logic programs . Well moded programs have, among other features, a straightforward left to right data ow model (see [AE93, AM94] and prohibit the use of logical ....
[Article contains additional citation context not shown here]
M. Marchiori. The Functional Side of Logic Programming. In Proceedings of the Seventh International Conference on Functional Programming Languages and Computer Architecture (FPCA'95), pages 55-65, La Jolla, California, 1995. ACM Press.
....logic language is mapped into parts of expression of a functional language. The question of execution efficiency is also important, though more difficult to address: implementation methods in both functional and logic programs remain active and rich fields of research. In a recent paper, Marchiori [39] considers a limited class of Prolog programs, and defines a translation from these into functional programs. The translation not only preserves termination and computed answers, but also keeps computational complexity. Resulting functional programs compute in a similar way to the logic programs ....
....a translator from a mode augmented LP to Haskell is implemented. The source language is pure Prolog, but containing cuts and negations, with annotation of In Out modes for each argument in predicate terms. Moreover, the source program is required to be acyclically well moded as explained in [52, 39]. Although modes of predicate terms can be automatically inferred [17, 16] we don t go into this and simply assume that modes are already given. In case a predicate is used in various modes, they are treated as different predicates. The main contributions of this exercise beyond Marchiori s paper ....
[Article contains additional citation context not shown here]
M. Marchiori. The Functional Side of Logic Programming. In Proceedings FPCA'95 Conference on Functional Programming Language and Computer Architecture, June 1995.
.... the introduction, the very few works on the subject ( 9, 18, 6] give only expressibility results and are, presently, of no practical use (cf. 13] Also, they do not cope with the intermediate degrees of k termination (2 k ) Very recently, other two works have addressed the subject, namely [25, 20]. The first work [25] has introduced the concept of k termination, and shown how it can be studied using functional programming techniques. However, the class of normal logic programs to which this analysis can be applied is rather limited, since the main goal of the work is completely different, ....
.... few works on the subject ( 9, 18, 6] give only expressibility results and are, presently, of no practical use (cf. 13] Also, they do not cope with the intermediate degrees of k termination (2 k ) Very recently, other two works have addressed the subject, namely [25, 20] The first work [25] has introduced the concept of k termination, and shown how it can be studied using functional programming techniques. However, the class of normal logic programs to which this analysis can be applied is rather limited, since the main goal of the work is completely different, namely to identify ....
M. Marchiori. The functional side of logic programming. In Proc. ACM FPCA, pages 55--65. ACM Press, 1995.
No context found.
M. Marchiori. The Functional Side of Logic Programming. In Proceedings FPCA'95 Conference on Functional Programming Language and Computer Architecture, June 1995.
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