Skip to main content

Operations on records

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 389))

Abstract

We define a simple collection of operations for creating and manipulating record structures, where records are intended as finite associations of values to labels. We study a second-order type system over these operations, supporting both subtyping and polymorphism. Our approach unifies and extends previous notions of records, bounded quantification, record extension, and parametrization by row-variables. The general aim is to provide foundations for concepts found in object-oriented languages, within the framework of typed lambda-calculus.

(Extended Abstract)

This extended abstract appears in conjunction with John Mitchell's invited lecture at this meeting. The lecture is a sequel to Luca Cardelli's invited lecture at the March, 1989 Workshop on Mathematical Foundations of Programming Language Semantics. Both are based on joint work, with this lecture focusing on results obtained after the March conference. A complete paper, currently in preparation, will appear in the proceedings of Programming Language Semantics meeting.

This is a preview of subscription content, log in via an institution.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. L. Cardelli. A semantics of multiple inheritance. Information and Computation, 76:138–164, 1988. Special issue devoted to Symp. on Semantics of Data Types, Sophia-Antipolis (France), 1984.

    Google Scholar 

  2. L. Cardelli and P. Wegner. On understanding types, data abstraction, and polymorphism. Computing Surveys, 17(4):471–522, 1985.

    Google Scholar 

  3. L. Jategaonkar and J.C. Mitchell. ML with extended pattern matching and subtypes. In Proc. ACM Symp. Lisp and Functional Programming Languages, pages 198–212, July 1988.

    Google Scholar 

  4. R. Milner. A theory of type polymorphism in programming. JCSS, 17:348–375, 1978.

    Google Scholar 

  5. J.C. Mitchell. Coercion and type inference (summary). In Proc. 11-th ACM Symp. on Principles of Programming Languages, pages 175–185, January 1984.

    Google Scholar 

  6. A. Ohori and P. Buneman. Type inference in a database language. In Proc. ACM Symp. Lisp and Functional Programming Languages, pages 174–183, July 1988.

    Google Scholar 

  7. D. Rémy. Typechecking records and variants in a natural extension of ML. In 16-th ACM Symposium on Principles of Programming Languages, pages 60–76, 1989.

    Google Scholar 

  8. M. Wand. Complete type inference for simple objects. In Proc. 2-nd IEEE Symp. on Logic in Computer Science, pages 37–44, 1987. Corrigendum in Proc. 3-rd IEEE Symp. on Logic in Computer Science, page 132, 1988.

    Google Scholar 

  9. M. Wand. Type inference for record concatenation and simple objects. In Proc. 4-nd IEEE Symp. on Logic in Computer Science, pages 92–97, 1989.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

David H. Pitt David E. Rydeheard Peter Dybjer Andrew M. Pitts Axel Poigné

Rights and permissions

Reprints and permissions

Copyright information

© 1989 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Cardelli, L., Mitchell, J.C. (1989). Operations on records. In: Pitt, D.H., Rydeheard, D.E., Dybjer, P., Pitts, A.M., Poigné, A. (eds) Category Theory and Computer Science. Lecture Notes in Computer Science, vol 389. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0018345

Download citation

  • DOI: https://doi.org/10.1007/BFb0018345

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-51662-0

  • Online ISBN: 978-3-540-46740-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics