|
ABSTRACT
Traditional logic programming languages, such as Prolog, use a fixed left-to-right atom scheduling rule. Recent logic programming languages, however, usually provide more flexible scheduling in which computation generally proceed left-to-right but in which some calls are dynamically “delayed” until their arguments are sufficiently instantiated to allow the call to run efficiently. Such dynamic scheduling has a significant cost. We give a framework for the global analysis of logic programming languages with dynamic scheduling and show that program analysis based on this framework supports optimizations which remove much of the overhead of dynamic scheduling.
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
|
M. Carlsson. Freeze, Indexing, and Other Implementation Issues in the Warn. In Fourth International Conference on Logic Programming, pages 40-58. University of Melbourne, MIT Press, May 1987.
|
| |
2
|
M. Carlsson. Sicstus Protog User's Manual. Po Box 1263, S-16313 Spanga, Sweden, February 1988.
|
| |
3
|
M. Codish. A Provably Correct Algorithm for Sharing and Freeness Inference. In 1992 Workshop on Static Analysis WSA'92, September 1992.
|
| |
4
|
M. Codish, M. Fataschi, and K. Marriott. Suspension Analysis for Concurrent Logic Programs. In K. Furukawa, editor, Proc. Eighth Int'l Conf. on Logic Programming, pages 331- 345. The MIT Press, Cambridge, Mass., 1991.
|
| |
5
|
|
| |
6
|
|
 |
7
|
|
| |
8
|
P. Cousot and R. Cousot. Comparing the Galois Connection and Widening/Narrowing Approaches to Abstract Interpretation. Technical report, LIX, Ecole Polytechnique, France, 1991.
|
| |
9
|
|
| |
10
|
g. Dehray. ~tatic Analysi~ of Parallel Logic Programs. In Fi~h Int'l Conference and Symposium on Logic Programming, Seattle,Wasinghton, August 1988. MIT Press.
|
 |
11
|
|
| |
12
|
S.K. Debray. QD-Janus: A Sequential Implementation of Janus in Prolog. Technical Report, University of Arizona, 1993.
|
 |
13
|
|
| |
14
|
M. Falaschi, M. Gabbrielh, K. Marriott and C. Palamidessi. Compositional analysis for concurrent constraint programming. IEEE Symposium on Logic in Computer Science, Montreal, June 1993.
|
| |
15
|
M. Garcia de la Panda and M. Hermenegildo. A Practical Application of Sharing and Freeness Inference. In 1992 Workshop on Static Analysis WSA '92, pages 118- 125, Bourdeaux, France, September 1992.
|
| |
16
|
D. Gudeman, K. De Bosschere and S.K. Debray. jc: An Efficient and Portable Sequential Implementation of Janus. In Proc. of 1992 Joint International Conference and Symposium on Logic Programming, 399-413. MIT Press, November 1992.
|
| |
17
|
M. Hanus. On the Completeness of Residuation. In posium on Logic Programming, 192-206. MIT Press, November 1992.
|
| |
18
|
|
| |
19
|
|
| |
20
|
|
| |
21
|
|
 |
22
|
|
 |
23
|
|
| |
24
|
|
 |
25
|
|
| |
26
|
C. S. Mellish. The automatic generation of mode declarations for Prolog programs. Technical Report 163, Dept. of Artificial Intelligence, University of Edinburgh, Scotland, 1981.
|
| |
27
|
|
| |
28
|
K. Muthukumar and M. Hermenegildo. Combined Determination of Sharing and Freeness of Program Variables Through Abstract Interpretation. In 1991 International Con}erence on Logic Programming, pages 49-63. MIT Press, June 1991.
|
| |
29
|
|
| |
30
|
|
| |
31
|
|
| |
32
|
|
| |
33
|
R. Warren, M. Hermenegildo and S.K. Debray. On the Practicality of Global Flow Analysis of Logic Programs. Proc. of the 5th International Con}erence and Symposium on Logic Programming, 684-699, 1988.
|
 |
34
|
|
CITED BY 10
|
|
|
|
|
|
|
|
|
|
|
|
|
|
M. Garcia de la Banda , M. Hermenegildo , M. Bruynooghe , V. Dumortier , G. Janssens , W. Simoens, Global analysis of constraint logic programs, ACM Transactions on Programming Languages and Systems (TOPLAS), v.18 n.5, p.564-614, Sept. 1996
|
|
|
|
|
|
Manuel V. Hermenegildo , Germán Puebla , Francisco Bueno , Pedro López-García, Integrated program debugging, verification, and optimization using abstract interpretation (and the Ciao system preprocessor), Science of Computer Programming, v.58 n.1-2, p.115-140, October 2005
|
|
|
|
|
|
|
|
|
|
|