학술논문
An ML-style record calculus with extensible records.
Document Type
Proceedings Paper
Author
Alves, Sandra (P-PORTS-CS) AMS Author Profile; Ramos, Miguel (P-PORTS-CS) AMS Author Profile
Source
Subject
68 Computer science -- 68N Software
68N18Functional programming and lambda calculus
68N18
Language
English
Abstract
Summary: ``In this work, we develop a polymorphic record calculus withextensible records. Extensible records are records that can have newfields added to them, or preexisting fields removed from them. We alsodevelop a static type system for this calculus and a sound and completetype inference algorithm. Most ML-style polymorphic record calculi thatsupport extensible records are based on row variables. We present analternative construction based on the polymorphic record calculusdeveloped by Ohori. Ohori based his polymorphic record calculus on theidea of kind restrictions. This allowed him to express polymorphicoperations on records such as field selection and modification. Withthe addition of extensible types, we were able to extend Ohori'soriginal calculus with other powerful operations on records such asfield addition and removal.''