|
ABSTRACT
This paper presents a new program analysis framework to approximate call patterns and their results in functional logic computations. We consider programs containing nonstrict, nondeterministic operations in order to make the analysis applicable to modern functional logic languages like Curry or TOY. For this purpose, we present a new fixpoint characterization of functional logic computations w.r.t. a set of initial calls. We show how programs can be analyzed by approximating this fixpoint. The results of such an approximation have various applications, e.g., program optimization as well as verifying safety properties of programs
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
|
E. Albert, G. Puebla, and M. Hermenegildo. An abstract interpretation-based approach to mobile code safety. Electronic Notes in Theoretical Computer Science, 132:113--129, 2005.
|
| |
2
|
M. Alpuente, M. Comini, S. Escobar, M. Falaschi, and S. Lucas. Abstract diagnosis of functional programs. In Proc. of the 12th Int'l Workshop on Logic-Based Program Synthesis and Transformation (LOPSTR 2002), pages 1--16. Springer LNCS 2664, 2002.
|
| |
3
|
|
| |
4
|
|
| |
5
|
S. Antoy and M. Hanus. Overlapping rules and logic variables in functional logic programs. In Proceedings of the 22nd International Conference on Logic Programming (ICLP 2006), pages 87--101. Springer LNCS 4079, 2006.
|
 |
6
|
|
| |
7
|
|
| |
8
|
D. Bert and R. Echahed. Abstraction of conditional term rewriting systems. In Proc. of the 1995 International Logic Programming Symposium, pages 147--161. MIT Press, 1995.
|
| |
9
|
|
| |
10
|
|
| |
11
|
B. Braβel and F. Huch. On a tighter integration of functional and logic programming. In Proc. APLAS 2007, pages 122--138. Springer LNCS 4807, 2007a.
|
| |
12
|
B. Braβel and F. Huch. The Kiel Curry system KiCS. In Proc. 17th International Conference on Applications of Declarative Programming and Knowledge Management (INAP 2007) and 21st Workshop on (Constraint) Logic Programming (WLP 2007), pages 215--223. Technical Report 434, University of Würzburg, 2007b.
|
| |
13
|
|
 |
14
|
|
 |
15
|
|
| |
16
|
P.W. Dart and J. Zobel. A regular type language for logic programs. In F. Pfenning, editor, Types in Logic Programming, pages 157--187. MIT Press, 1992.
|
| |
17
|
|
| |
18
|
|
| |
19
|
J.P. Gallagher and M. Bruynooghe. The derivation of an algorithm for program specialisation. New Generation Computing, 9(3/4):305--334, 1991.
|
| |
20
|
J.C. González-Moreno, M.T. Hortalá-González, F.J. López-Fraguas, and M. Rodríguez-Artalejo. An approach to declarative programming based on a rewriting logic. Journal of Logic Programming, 40:47--87, 1999.
|
| |
21
|
M. Hanus. Multi-paradigm declarative languages. In Proceedings of the International Conference on Logic Programming (ICLP 2007), pages 45--75. Springer LNCS 4670, 2007.
|
| |
22
|
M. Hanus. Call pattern analysis for functional logic programs. Technical report 0803, Christian-Albrechts-Universität Kiel, 2008.
|
| |
23
|
M. Hanus. The integration of functions into logic programming: From theory to practice. Journal of Logic Programming, 19&20:583--628, 1994.
|
 |
24
|
|
| |
25
|
M. Hanus (ed.). Curry: An integrated functional logic language (vers. 0.8.2). Available at http://www.informatik.uni-kiel.de/~curry, 2006.
|
| |
26
|
|
 |
27
|
|
| |
28
|
|
 |
29
|
|
| |
30
|
N. Mitchell and C. Runciman. A static checker for safe pattern matching in Haskell. In Trends in Functional Programming, volume 6, pages 15--30. Intellect, 2007.
|
| |
31
|
J.M. Molina-Bravo and E. Pimentel. Modularity in functional-logic programming. In Proc. of the Fourteenth International Conference on Logic Programming (ICLP'97), pages 183--197. MIT Press, 1997.
|
| |
32
|
|
 |
33
|
|
 |
34
|
|
 |
35
|
|
| |
36
|
D.H.D. Warren. Higher-order extensions to Prolog: are they needed? In Machine Intelligence 10, pages 441--454, 1982.
|
| |
37
|
|
|