Uniqueness typing redefined

  • Authors:
  • Edsko De Vries;Rinus Plasmeijer;David M. Abrahamson

  • Affiliations:
  • Trinity College Dublin, Ireland;Radboud Universiteit Nijmegen, Netherlands;Trinity College Dublin, Ireland

  • Venue:
  • IFL'06 Proceedings of the 18th international conference on Implementation and application of functional languages
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

We modify Clean's uniqueness type system in two ways. First, while Clean functions that are partially applied to a unique argument are necessarily unique (they cannot lose their uniqueness), we just require that they must be unique when applied. This ultimately makes subtyping redundant. Second, we extend the type system to allow for higher-rank types. To be able to do this, we explicitly associate type constraints (attribute inequalities) with type schemes. Consequently, types in our system are much more precise about constraint propagation.