Results 1 -
5 of
5
BinProlog 4.00 User Guide
, 1995
"... 4.1.1). Please send comments and bug reports to binprolog@info.umoncton.ca. 3 Introduction to BinProlog BinProlog has been developped by Paul Tarau mostly at the University of Moncton, Canada, and is based on his BinWAM abstract machine, a specialization of the WAM for the efficient execution of bi ..."
Abstract
-
Cited by 3 (2 self)
- Add to MetaCart
4.1.1). Please send comments and bug reports to binprolog@info.umoncton.ca. 3 Introduction to BinProlog BinProlog has been developped by Paul Tarau mostly at the University of Moncton, Canada, and is based on his BinWAM abstract machine, a specialization of the WAM for the efficient execution of binary logic programs. BinProlog is a fast and small Prolog compiler, based on the transformation of Prolog to binary clauses. The compilation technique is similar to the Continuation Passing Style transformation used in some ML implementations. Although it (used to) incorporate some last minute research experiments, which might look adventurous at the first sight, BinProlog is a fairly robust and complete Prolog implementation featuring both C-emulated execution and generation of standalone applications by compilation to C. Some of its features are: ffl source-level transformation based stateless module system ffl dynamic code, f
Flexible Continuations in Logic Programs via Unfold/Fold Transformations and Goal Generalization
- In Proceedings of the 2nd ACM SIGPLAN Workshop on Continuations
, 1997
"... We consider the use of continuations for deriving efficient logic programs. It is known that both in the case of functional and logic programming, the introduction of continuations is a valuable technique for transforming old programs into new, more efficient ones. However, in general, in order to d ..."
Abstract
-
Cited by 3 (2 self)
- Add to MetaCart
We consider the use of continuations for deriving efficient logic programs. It is known that both in the case of functional and logic programming, the introduction of continuations is a valuable technique for transforming old programs into new, more efficient ones. However, in general, in order to derive programs with high levels of efficiency, one should introduce continuations according to suitable strategies. In particular, we show that it is preferable to introduce continuations in a flexible way, that is, during the process of program transformation itself, rather than at its beginning or at its end. We extend logic programs by allowing variables to range over goals, and we propose a set of transformation rules for this extended language. We propose a generalization strategy for the introduction of goal variables which may be viewed as continuations and they allow for the derivation of very efficient programs. 1 Introduction Continuation-based program transformations [22] have be...
Continuation Prolog: A new intermediary language for WAM and BinWAM code generation
- in Post-ILPS'95 Workshop on Implementation of Logic Programming Languages. f16g
, 1995
"... We present a new intermediary language suitable for program transformations that fills the gap between Prolog source level and lower representations like binary Prolog or WAM-code. With the help of Continuation Prolog transformations on the level of continuations can be expressed that are unavai ..."
Abstract
-
Cited by 1 (0 self)
- Add to MetaCart
We present a new intermediary language suitable for program transformations that fills the gap between Prolog source level and lower representations like binary Prolog or WAM-code. With the help of Continuation Prolog transformations on the level of continuations can be expressed that are unavailable in the usual settings of WAM-code generation.
Publications in Program Development
"... interpretation based on Alexander templates. The Journal of Logic Programming, 15(1 & 2):31--54, January 1993. [14] T. Kanamori and T. Kawamura. Abstract interpretation based on oldt resolution. The Journal of Logic Programming, 15(1 & 2):1--30, January 1993. [15] H.-P. Ko, D. McAllester, and M. E. ..."
Abstract
- Add to MetaCart
interpretation based on Alexander templates. The Journal of Logic Programming, 15(1 & 2):31--54, January 1993. [14] T. Kanamori and T. Kawamura. Abstract interpretation based on oldt resolution. The Journal of Logic Programming, 15(1 & 2):1--30, January 1993. [15] H.-P. Ko, D. McAllester, and M. E. Nadel. Lower bounds for the lengths of refutations. The Journal of Logic Programming, 17(1):31--58, October 1993. [16] K. Marriott and H. Sondergaard. Difference-list transformation for prolog. New Generation Computing, 11(2):125--157, 1993. [17] U. Nilsson. Towards a methodology for the design of abstract machines for logic programming languages. The Journal of Logic Programming, 16(1 & 2):163--189, May 1993. [18] M. Proietti and A. Pettorossi. An abstract strategy for transforming logic programs. Fundamenta Informaticae, 18:267--286, 1993. [19] M. Proietti and A. Pettorossi. The loop absorption and the generalization strategies for the development of logic programs and partial deduction....
Flexible Continuations in Logic Programs via Unfold/Fold Transformations and Goal Generalization
- In Proceedings of the 2nd ACM SIGPLAN Workshop on Continuations
, 1997
"... We consider the use of continuations for deriving efficient logic programs. It is known that both in the case of functional and logic programming, the introduction of continuations is a valuable technique for transforming old programs into new, more efficient ones. However, in general, in order ..."
Abstract
- Add to MetaCart
We consider the use of continuations for deriving efficient logic programs. It is known that both in the case of functional and logic programming, the introduction of continuations is a valuable technique for transforming old programs into new, more efficient ones. However, in general, in order to derive programs with high levels of efficiency, one should introduce continuations according to suitable strategies. In particular, we show that it is preferable to introduce continuations in a flexible way, that is, during the process of program transformation itself, rather than at its beginning or at its end. We extend logic programs by allowing variables to range over goals, and we propose a set of transformation rules for this extended language. We propose a generalization strategy for the introduction of goal variables which may be viewed as continuations and they allow for the derivation of very efficient programs. 1 Introduction Continuation-based program transformation...

