MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  Live-structure analysis for logic programming languages with declarations (1997) [8 citations — 6 self]

Download:
Download as a PDF | Download as a PS
by Maurice Bruynooghe, Maurice Bruynooghe, Gerda Janssens, Gerda Janssens, Andreas Kagedal, Andreas Kagedal
Proceedings of the Fourteenth International Conference on Logic Programming (ICLP'97
ftp://ftp.cs.kuleuven.ac.be/pub/logic-prgm/publications/techreports/cw231.ps
Add To MetaCart

Abstract:

Live-structure analysis addresses the problem of memory reuse for logic programs through program analysis rather than by runtime garbage collection. The present paper focuses on pure logic programs with declarations of modes, types, and determinism. The analysis is based on previous work for pure Prolog but introduces important innovations. First, the liveness analysis is extended to consider not only forward liveness but also backward liveness (i.e., during backtracking by the program). This allows us to identify the calls with exclusive access to some parts of the data-structures. Second, the efficiency of the analysis is reached not only by exploiting the information provided by the declarations, but also by splitting the analysis in a goal-independent and a goal-dependent phase (as proposed by Codish et al.).

Citations

180 A practical framework for the abstract interpretation of logic programs – Bruynooghe - 1991
146 The execution algorithm of Mercury, an efficient purely declarative logic programming language – Somogyi, Henderson, et al. - 1996
112 Deriving descriptions of possible values of program variables by means of abstract interpretation – Bruynooghe, Janssens - 1992
88 Static analysis of logic programs for independent AND-parallelism – Jacobs, Langen - 1992
67 Incremental Analysis of Constraint Logic Programs – Hermenegildo, Puebla, et al. - 1996
51 A framework of directionality for proving termination of logic programs – Bronsard, Lakshman, et al. - 1992
39 An application of abstract interpretation of logic programs: occur check reduction – Sndergaard - 1986
27 Directional types and the annotation method – Boye, Maluszy'nski - 1997
17 Integrating modes and subtypes into a Prolog type-checker – Rouzaud, Nguyen-Phuong - 1992
14 Live-structure dataflow analysis for prolog – Mulkers, Winsborough, et al. - 1994
12 A Blueprint for an Abstract Machine for Abstract Interpretation of (Constraint) Logic Programs – Janssens, Bruynooghe, et al. - 1995
11 Abstract interpretation for (constraint) logic programming – Bruynooghe, Boulanger - 1993
11 On copy avoidance in single assignment languages – Debray - 1993
10 Compile-time garbage collection for ground Prolog – Klu'zniak - 1988
10 A theory of type polymorphism in programming. Journal of computer and system sciences – Milner - 1978
6 Exploiting Goal Independence in the Analysis of Logic Programs – Codish, Bruynooghe, et al. - 1997
6 Update in place: Overview of the Siva project – Gudjonsson, Winsborough - 1993
3 Adding redundancy to obtain more reliable and readable Prolog programs – Bruynooghe - 1982
2 Goal Dependent versus Goal Independent Analysis of Logic Programs – Codish, Banda, et al. - 1994
1 Exploiting Groundness in Logic Programs – Kagedal - 1995
1 Efficient storage reuse of aggregates in single assignment languages – Li, Kirkham - 1996