Abstract
We investigate a representation of contexts, expressions with holes in them, that enables them to be meaningfully transformed, in particular α-converted and β-reduced. In particular we generalize the set of λ-expressions to include holes, and on these generalized entities define β-reduction (i.e., substitution) and filling so that these operations preserve α-congruence and commute. The theory is then applied to allow the encoding of reduction systems and operational semantics of call-by-value calculi enriched with control, imperative and concurrent features.
Similar content being viewed by others
References
Abadi, M., Cardeli, L., Curien, P.-L., and Lévy, J.-J. Explicit substitutions. In Seventeenth Annual ACM Symposium on Principles of Programmings Languages, 1990, pp. 31–46.
Aczel, P. A general Church-Rosser theorem, Unpublished manuscript.
Agha, G., Mason, I.A. Smith, S.F., and Talcott, C.L. A foundation for actor computation. Journal of Functional Programming, 7:1–72, 1997.
Avron, A., Honsell, F., Mason, I.A., and Pollack, R. Using typed lambda calculus to implement formal systems on a machine. Journal of Automated Reasoning, 9:309–354, 1992.
Curry, H.B. and Feys, R. Combinatory Logic. Studies in Logic and the Foundations of Mathematics. North-Holland, 1958.
Dami, L. A lambda-calculus for dynamic binding. Theoretical Computer Science, 192:201–231, 1998.
Felleisen, M. The Calculi of Lambda-v-cs Conversion: A Syntactic Theory of Control and State in Imperative Higher-Order Programming Languages. Ph.D. Thesis, Indiana University, 1987.
Felleisen, M. and Friedman, D.P. Control operators, the SECD-machine, and the λ'-calculus. In Formal Description of Programming Concepts III, M. Wirsing (Ed.), North-Holland, 1986, pp. 193–217.
Frost, J. and Mason, I.A. An operational logic of effects. In Proceedings of theAustralasian Theory Symposium, CATS' 96, 1996, pp. 147–156.
Griffin, T.G. A formulae as types notion of control. In Seventeenth Annual ACM Symposium on Principles of Programmings Languages, 1990, pp. 47–58.
Hashimoto, M. and Ohori, A. A typed context calculus, 1996. Preprint RIMS-1098, Research Institute for Mathematical Sciences, Kyoto University, 1996. See: http://www.kurims.kyoto-u.ac.jp/~ohori/.
Honsell, F., Mason, I.A., Smith, S.F., and Talcott, C.L. A variable typed logic of effects. Information and Computation, 119(1):55–90, 1995.
Klop, J. Combinatory Reduction Systems. Ph.D. Thesis, University of Utrecht, 1980. Published as a Mathematical Centre Tract 129.
Lee, S.-D. and Friedman, D.P. Enriching the Lambda Calculus with Contexts: Towards a Theory of Incremental Program Construction. In Proceedings ACM Int. Conf. on Functional Programming, ACM SIGPLAN Notices, 31(6):239–250, 1996.
Mason, I.A. Hoare's Logic in the LF. Technical Report ECS-LFCS-87-32, Laboratory for foundations of computer science, University of Edinburgh, 1987.
Mason, I.A. A first order logic of effects. Theoretical Computer Science, 185:277–318, 1997.
Mason, I.A. Parametric Computation. In Proceedings of the Australasian Theory Symposium, CATS' 97, J. Harland (Ed.), 1997, pp. 103–112. Complete proofs of all claims are also available from http://smcs.une.edu.au/ iam/Data/Papers/97 cats-proofs.ps as postscript.
Mason, I.A. and Talcott, C.L. Equivalence in functional languages with effects. Journal of Functional Programming, 1:287–327, 1991.
Milner, R. Fully abstract models of typed λ-calculi. Theoretical Computer Science, 4:1–22, 1977.
Morris, J.H. Lambda Calculus Models of Programming Languages. Ph.D. Thesis, Massachusetts Institute of Technology, 1968.
Pitts, A.M. Some notes on inductive and co-inductive techniques in the semantics of functional programs, 1994. Notes Series BRICS-NS-94-5, BRICS, Department of Computer Science, University of Aarhus.
Plotkin, G. Call-by-name, call-by-value and the lambda calculus. Theoretical Computer Science, 1:125–159, 1975.
Sands, D. Computing with contexts--A simple approach. In Proceedings of Higher-Order Operational Techniques in Semantics, HOOTS II, Electronic Notes in Theoretical Computer Science, vol. 10, 1998.
Sato, M., Sakurai, T., and Burstall, R. Explicit environments. In Typed Lambda Calculi and Applications, Proceedings of 4th International Conference, TLCA'99. L'Aquila, Italy, April 7–9, 1999, J.Y. Girard (Ed.) vol. 1581 of Lecture Notes in Computer Science, Springer-Verlag, 1999.
Talcott, C.L. Binding structures. In Artificial Intelligence and Mathematical Theory of Computation. Vladimir Lifschitz (Ed.), Academic Press, 1991.
Talcott, C.L. A theory of binding structures and its applications to rewriting. Theoretical Computer Science, 112:99–143, 1993.
Talcott, C.L. Reasoning about functions with effects. In Higher Order Operational Techniques in Semantics. A. Gordon and A. Pitts (Eds.), Cambridge University Press, 1998.
Weyhrauch, R.W. Prolegomena to a theory of formal reasoning. Artificial Intelligence, 13:133–170, 1980.
Author information
Authors and Affiliations
Rights and permissions
About this article
Cite this article
Mason, I.A. Computing with Contexts. Higher-Order and Symbolic Computation 12, 171–201 (1999). https://doi.org/10.1023/A:1010052222987
Issue Date:
DOI: https://doi.org/10.1023/A:1010052222987