Static typing with value space-based subtyping

  • Authors:
  • Alexander Paar;Stefan Gruner

  • Affiliations:
  • University of Pretoria, Pretoria, South Africa;University of Pretoria, Pretoria, South Africa

  • Venue:
  • Proceedings of the South African Institute of Computer Scientists and Information Technologists Conference on Knowledge, Innovation and Leadership in a Diverse, Multidisciplinary Environment
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

Numerous programming and schema languages contain the notion of value types. However, support for value space-based subtyping is spotty. This paper presents a formal type system for atomic value types as an extension of the simply typed lambda calculus with subtyping. In the λc-calculus, value types can be derived through the application of value space constraints. Type inference rules can be used to infer transient value space constraints that hold for limited scopes of a program. The type system of the λc-calculus is proved to be sound. The λc-calculus was fully implemented in Java and C#. The presented approach was successfully validated to subsume XML Schema Definition type construction and to facilitate the integration of XSD data types with the C# programming language.