Abstract
The problem of analyzing functional programs requires us to identify subterms of a given term with certain properties. In this paper, we introduce a variant of λ-calculus called labeled λ-calculus to help us build a theory of positional analysis. Labeled λ-calculus uses sets of labels as a means of naming subterms and keeping track of them. We then define a stronger form of strictness called need and show how labeled λ-calculus can be used to compute need. We extend the notion of the need to subterms and use labeled λ-calculus to identify needed subterms. We also use this notion to qualify a function's need for its argument — to identify how much of the argument to a function is needed to evaluate an application to head normal form.
This is a preview of subscription content, log in via an institution.
Preview
Unable to display preview. Download preview PDF.
References
Samson Abramsky and Chris Hankin, editors. Abstract Interpretation of Declaration Languages, Chicester, Great Britain, 1987. Ellis Horwood.
H. P. Barendregt. The Lambda Calculus: Its Syntax and Semantics. North Holland, 1984.
C. Bohm, editor. Lambda Calculus and Computer Science, Volume 37 of Lecture Notes in Computer Science, Berlin, 1975. Springer Verlag. Proceedings of the Symposium held in Rome.
Geoffrey L. Burn, Chris Hankin, and Samson Abramsky. The theory and practice of strictness analysis for higher order functions. Science of Computer Programming, 7:249–278, 1986.
J.R. Hindley and J.P. Seldin, editors. To H. B. Curry: Essays on Combinatory Logic, Lambda Calculus and Formalism, New York and London, 1980. Academic Press.
J. Hughes. Strictness detection in non-flat domains. In Programs as Data Objects, volume 217 of Lecture Notes in Computer Science, pages 42–62, New York, 1986. Springer Verlag.
J.M.E. Hyland. A syntactic characterisation of the equality in some models of the λ calculus. Journal of the London Mathematical Society, 12(2):361–370, 1976.
J.-J. Levy. An algebraic interpretation of the λβκ calculus and a labelled λ-calculus. In Bohm
J.-J. Levy. Optimal reductions in the lambda calculus. In Hindley and Seldin [5], pages 159–192.
Alan Mycroft. The theory and practice of transforming call-by-need into call-by-value. In Procs. of an International Symposium on Programming, volume 83 of Lecture Notes in Computer Science, pages 269–281, New York, 1980. Springer Verlag.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1995 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Gandhe, M., Venkatesh, G., Sanyal, A. (1995). Labeled λ-calculus and a generalised notion of strictness. In: Kanchanasut, K., Lévy, JJ. (eds) Algorithms, Concurrency and Knowledge. ACSC 1995. Lecture Notes in Computer Science, vol 1023. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-60688-2_38
Download citation
DOI: https://doi.org/10.1007/3-540-60688-2_38
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-60688-8
Online ISBN: 978-3-540-49262-7
eBook Packages: Springer Book Archive