Abstract
We consider call-by-name, call-by-value, and lazy versions of PCF, and prove, using both syntactic and semantic means, that the operational equivalences of the base language are preserved when the language is extended with sum and product types, with polymorphic types, and with recursive types. These theorems show that the type systems of the extended languages are orthogonal to the type systems of the original languages.
Preview
Unable to display preview. Download preview PDF.
References
S. Abramsky. The lazy lambda calculus. In D. A. Turner, editor, Research Topics in Functional Programming, pages 65–117. Addison-Wesley, 1990.
R. Amadio. A fixed-point extension of the second-order lambda calculus. In Proceedings, Third Annual Symposium on Logic in Computer Science. IEEE, 1988.
R. Amadio. On the adequacy of PER models. Technical Report CRIN 91-R-177, Centre de Recherche en Informatique de Nancy, 1991.
R. Amadio. Recursion and Subtyping in Lambda Calculi. PhD thesis, Universita di Pisa, 1991.
H. P. Barendregt. The Lambda Calculus: Its Syntax and Semantics, volume 103 of Studies in Logic. North-Holland, 1981. Revised Edition, 1984.
B. Bloom and J. G. Riecke. LCF should be lifted. In T. Rus, editor, Proc. Conf. Algebraic Methodology and Software Technology, pages 133–136. Department of Computer Science, University of Iowa, 1989.
V. Breazu-Tannen. Conservative extensions of type theories. PhD thesis, Dept. Mathematics, Massachusetts Institute of Technology, 1987. Supervised by Albert R. Meyer.
V. Breazu-Tannen. Combining algebra and higher-order types. In Proceedings, Third Annual Symposium on Logic in Computer Science, pages 82–90. IEEE, 1988.
V. Breazu-Tannen and A. R. Meyer. Computable values can be classical. In Conference Record of the Fourteenth Annual ACM Symposium on Principles of Programming Languages, pages 238–245. ACM, 1987.
T. Coquand, C. A. Gunter, and G. Winskel. dI-domains as a model of polymorphism. In M. Main, A. Melton, M. Mislove, and D. Schmidt, editors, Mathematical Foundations of Programming Language Semantics: 3rd Workshop, volume 298 of Lect. Notes in Computer Sci., pages 344–363. Springer-Verlag, 1987.
T. Coquand, C. A. Gunter, and G. Winskel. Domain theoretic models of polymorphism. Information and Computation, 81:123–167, 1989.
S. S. Cosmadakis. Computing with recursive types. In Proceedings, Fourth Annual Symposium on Logic in Computer Science, pages 24–38. IEEE, 1989.
G. Ghelli. Recursive types are not conservative over F≤. In Typed Lambda Calculi and Applications, volume 664 of Lect. Notes in Computer Sci., pages 146–162. Springer-Verlag, 1993.
J.-Y. Girard, Y. Lafont, and P. Taylor. Proofs and Types. Cambridge University Press, 1989.
C. A. Gunter. Semantics of Programming Languages: Structures and Techniques. MIT Press, 1992.
R. Milner, M. Tofte, and R. Harper. The Definition of Standard ML. MIT Press, 1990.
J. C. Mitchell. On abstraction and the expressive power of programming languages. In Theoretical Aspects of Computer Software, volume 526 of Lect. Notes in Computer Sci., pages 290–310, 1991.
K. Mulmuley. Full Abstraction and Semantic Equivalence. ACM Doctoral Dissertation Award 1986. MIT Press, 1987.
C.-H. L. Ong. Fully abstract models of the lazy lambda calculus. In 29th Annual Symposium on Foundations of Computer Science, pages 368–376. IEEE, 1988.
C.-H. L. Ong. The Lazy Lambda Calculus: An Investigation into the Foundations of Functional Programming. PhD thesis, Imperial College, University of London, 1988.
G. D. Plotkin. LCF considered as a programming language. Theoretical Computer Sci., 5:223–257, 1977.
J. C. Reynolds. On the relation between direct and continuation semantics. In Proceedings of the Second Colloquium on Automata, Languages, and Programming, Lecture Notes in Computer Science 14, pages 141–156. Springer-Verlag, 1974.
J. G. Riecke. Fully abstract translations between functional languages (preliminary report). In Conference Record of the Eighteenth Annual ACM Symposium on Principles of Programming Languages, pages 245–254. ACM, 1991.
J. G. Riecke. The Logic and Expressibility of Simply-Typed Call-by-Value and Lazy Languages. PhD thesis, Massachusetts Institute of Technology, 1991. Available as technical report MIT/LCS/TR-523 (MIT Laboratory for Computer Science).
J. G. Riecke. Delimiting the scope of effects. In Proceedings of the 1993 Conference on Functional Programming and Computer Architecture, pages 146–158. ACM, 1993.
D. Scott. A type theoretical alternative to CUCH, ISWIM, OWHY. Unpublished manuscript, Oxford University, 1969.
B. B. Sorensen and C. Clausen. Adequacy results for a lazy functional language with recursive and polymorphic types. Unpublished manuscript.
R. Subrahmanyam. A theory of language expressiveness. Unpublished manuscript, Wesleyan University, 1993.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1994 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Riecke, J.G., Subrahmanyam, R. (1994). Extensions to type systems can preserve operational equivalences. In: Hagiya, M., Mitchell, J.C. (eds) Theoretical Aspects of Computer Software. TACS 1994. Lecture Notes in Computer Science, vol 789. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-57887-0_91
Download citation
DOI: https://doi.org/10.1007/3-540-57887-0_91
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-57887-1
Online ISBN: 978-3-540-48383-0
eBook Packages: Springer Book Archive