ACM Home Page
Please provide us with feedback. Feedback
An implementation of narrowing strategies
Full text PdfPdf (277 KB)
Source International Conference on Principles and Practice of Declarative Programming archive
Proceedings of the 3rd ACM SIGPLAN international conference on Principles and practice of declarative programming table of contents
Florence, Italy
Pages: 207 - 217  
Year of Publication: 2001
ISBN:1-58113-388-X
Authors
Sergio Antoy  Portland State University, Portland, OR
Bart Massey  Portland State University, Portland, OR
Michael Hanus  Christian-Albrechts-Universität Kiel, Kiel, Germany
Frank Steiner  Christian-Albrechts-Universität Kiel, Kiel, Germany
Sponsor
SIGPLAN: ACM Special Interest Group on Programming Languages
Publisher
ACM  New York, NY, USA
Bibliometrics
Downloads (6 Weeks): 0,   Downloads (12 Months): 11,   Citation Count: 6
Additional Information:

abstract   references   cited by   index terms   collaborative colleagues  

Tools and Actions: Request Permissions Request Permissions    Review this Article  
DOI Bookmark: Use this link to bookmark this Article: http://doi.acm.org/10.1145/773184.773206
What is a DOI?

ABSTRACT

This paper describes an implementation of narrowing, an essential component of implementations of modern functional logic languages. These implementations rely on narrowing, in particular on some optimal narrowing strategies, to execute functional logic programs. We translate functional logic programs into imperative (Java) programs without an intermediate abstract machine. A central idea of our approach is the explicit representation and processing of narrowing computations as data objects. This enables the implementation of operationally complete strategies (i.e., without backtracking) or techniques for search control (e.g., encapsulated search). Thanks to the use of an intermediate and portable represen tation of programs, our implementation is general enough to be used as a common back end for a wide variety of functional logic languages.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
H. Aït-Kaci, P. Lincoln, and R. Nasr. Le Fun: Logic, equations, and functions. In Proc. 4th IEEE Internat. Symposium on Logic Programming, pages 17--23, San Francisco, 1987.
 
2
 
3
 
4
S. Antoy. Needed narrowing in Prolog. Technical report 96-2, Portland State University, 1996.
 
5
6
7
 
8
 
9
 
10
 
11
M. Chakravarty and H. Lock. Towards the uniform implementation of declarative languages. Computer Languages, 23(2--4):121--160, 1997.
 
12
 
13
 
14
M. Hanus. The integration of functions into logic programming: From theory to practice. Journal of Logic Programming, 19&20:583--628, 1994.
 
15
16
 
17
M. Hanus, S. Antoy, J. Koj, R. Sadre, and F. Steiner. PAKCS 1.3: The Portland Aachen Kiel Curry System User Manual. Technical report, University of Kiel, Germany, 2000. Available at http://www.informatik.uni-kiel.de/~pakcs.
 
18
 
19
M. Hanus and R. Sadre. An abstract machine for Curry and its concurrent implementation in Java. Journal of Functional and Logic Programming, 1999(6), 1999.
 
20
 
21
M. Hanus (ed.). Curry: An Integrated Functional Logic Language. Available at http://www.informatik.uni-kiel.de/~curry, 2000.
 
22
 
23
G. Huet and J.-J. Lévy. Computations in orthogonal rewriting systems. In J.-L. Lassez and G. Plotkin, editors, Computational Logic: Essays in Honor of Alan Robinson, pages 395--443. MIT Press, 1991.
 
24
S. Janson. AKL -- A Multiparadigm Programming Language. PhD thesis, Swedish Institute of Computer Science, 1994.
 
25
J. Lloyd. Programming in an integrated functional and logic language. Journal of Functional and Logic Programming, 1999(3):1--49, 1999.
 
26
R. Loogen. Relating the implementation techniques of functional and functional logic languages. New Generation Computing, 11:179--215, 1993.
 
27
 
28
 
29
30
 
31
32
 
33
P. Tarau. Jinni. Available at http://www.binnetcorp.com/Jinni/, 2001.
 
34
D. Warren. Higher-order extensions to Prolog: are they needed? In Machine Intelligence 10, pages 441--454, 1982.


Collaborative Colleagues:
Sergio Antoy: colleagues
Bart Massey: colleagues
Michael Hanus: colleagues
Frank Steiner: colleagues