TY - JOUR
T1 - A simple code improvement scheme for prolog
AU - Debray, Saumya K.
N1 - Funding Information:
*A preliminary version of this paper appeared in Proceedings of the Sixth International Conference on Logic Programming, Lisbon, June 1989. This work was supported in part by the National Science Foundation under grant number CCR-8702939. Address correspondence to Saumya K. Debray, Department of Computer Science, The University of Arizona, Tucson, AZ 8572 1. Accepted February 199 1.
PY - 1992/5
Y1 - 1992/5
N2 - The generation of efficient code for Prolog programs requires sophisticated code transformation and optimization systems. Much of the recent work in this area has focused on high level transformations, typically at the source level. Unfortunately, such high level transformations suffer from the deficiency of being unable to address low level implementation details. This paper presents a simple code improvement scheme that can be used for a variety of low level optimizations. Applications of this scheme are illustrated using low level optimizations that reduce tag manipulation, dereferencing, trail testing, envi- ronment allocation, and redundant bound checks. The transformation scheme serves as a unified framework for reasoning about a variety of low level optimizations that have, to date, been dealt with in a more or less ad hoc manner.
AB - The generation of efficient code for Prolog programs requires sophisticated code transformation and optimization systems. Much of the recent work in this area has focused on high level transformations, typically at the source level. Unfortunately, such high level transformations suffer from the deficiency of being unable to address low level implementation details. This paper presents a simple code improvement scheme that can be used for a variety of low level optimizations. Applications of this scheme are illustrated using low level optimizations that reduce tag manipulation, dereferencing, trail testing, envi- ronment allocation, and redundant bound checks. The transformation scheme serves as a unified framework for reasoning about a variety of low level optimizations that have, to date, been dealt with in a more or less ad hoc manner.
UR - http://www.scopus.com/inward/record.url?scp=0013230743&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=0013230743&partnerID=8YFLogxK
U2 - 10.1016/0743-1066(92)90021-T
DO - 10.1016/0743-1066(92)90021-T
M3 - Article
AN - SCOPUS:0013230743
SN - 0743-1066
VL - 13
SP - 57
EP - 88
JO - The Journal of Logic Programming
JF - The Journal of Logic Programming
IS - 1
ER -