Mixin modules

  • Authors:
  • Dominic Duggan;Constantinos Sourelis

  • Affiliations:
  • Department of Computer Science, University of Waterloo, Waterloo, Ontario, Canada N2L 3G1;-

  • Venue:
  • Proceedings of the first ACM SIGPLAN international conference on Functional programming
  • Year:
  • 1996

Quantified Score

Hi-index 0.00

Visualization

Abstract

Mixin modules are proposed as a new construct for module languages, allowing recursive definitions to span module boundaries. Mixin modules are proposed specifically for the Standard ML language. Several applications are described, including the resolution of cycles in module import dependency graphs, as well as functionality related to Haskell type classes and CLOS generic functions, though without any complications to the core language semantics. Mixin modules require no changes to the core ML type system, and only a very minor change to its run-time semantics. A type system and reduction semantics are provided, and the former is verified to be sound relative to the latter.