Abstract
This paper presents a framework for comparing two strictness analysis techniques: Abstract interpretation and non-standard type inference. The comparison is based on the representation of a lattice by its ideals. A formal system for deducing inclusions between ideals of a lattice is presented and proved sound and complete. Viewing the ideals as strictness properties we use the formal system to define a program logic for deducing strictness properties of expressions in a typed lambda calculus. This strictness logic is shown to be sound and complete with respect to the abstract interpretation, which establishes the main result that strictness analysis by type-inference and by abstract interpretation are equally powerful techniques.
This work was partially supported by ESPRIT grant BRA 3124 SEMANTIQUE
Preview
Unable to display preview. Download preview PDF.
References
S. Abramsky. Domain theory in logical form. Journal of Pure and Applied Logic, 1990.
S. Abramsky and C. Hankin. Abstract Interpretation of Declarative Languages. Ellis Horwood, 1987.
G.L. Burn. Abstract Interpretation and the Parallel Evaluation of Functional Languages. PhD thesis, Imperial College, University of London, 1987.
G.L. Burn, C.L. Hankin, and S. Abramsky. The theory and practice of strictness analysis for higher order functions. Science of Computer Programming, 7:249–278, 1986.
B.A. Davey and H.A. Priestley. Introduction to Lattices and Order. Cambridge University Press, 1990.
C. K. Gomard. Partial type inference for untyped functional programs. In Lisp and Functional Programming '90, pages 282–287. ACM, 1990.
S. Hunt and C. Hankin. Fixed points and frontiers: A new perspective. Journal of Functional Programming, 1(1), 1991.
S. Hunt and D. Sands. Binding time analysis: A new PERspective. In Proc. ACM SIGPLAN Symposium on Partial Evaluation and Semantics-Based Program Manipulation, 1991.
P. T. Jonstone. Stone Spaces, volume 3 of Cambridge Studies in Advanced Mathematics. Cambridge University Press, Cambridge, 1982.
N. Jones, C. Gomard, A. Bondorf, O. Danvy, and T. Mogensen. A self-applicable partial evaluator for the lambda calculus. In International Conference on Computer Languages. IEEE Computer Society, 1990.
T-M Kuo and P. Mishra. Strictness analysis: A new perspective based on type inference. In Proc. 4th. Int. Conf. on Functional Programming and Computer Architecture. ACM Press, 1989.
A. Mycroft. Abstract Interpretation and Optimising Transformation for Applicative Programs. PhD thesis, Univ. of Edinburgh, 1981.
P. Wadler. Is there a use for linear logic? In Proc. ACM SIGPLAN Symposium on Partial Evaluation and Semantics-Based Program Manipulation, 1991.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1991 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Jensen, T.P. (1991). Strictness analysis in logical form. In: Hughes, J. (eds) Functional Programming Languages and Computer Architecture. FPCA 1991. Lecture Notes in Computer Science, vol 523. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3540543961_17
Download citation
DOI: https://doi.org/10.1007/3540543961_17
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-54396-1
Online ISBN: 978-3-540-47599-6
eBook Packages: Springer Book Archive