Strategies for Solving Constraints in Type and Effect Systems

  • Authors:
  • Jurriaan Hage;Bastiaan Heeren

  • Affiliations:
  • Department of Information and Computing Sciences, Universiteit Utrecht P.O.Box 80.089, 3508 TB Utrecht, The Netherlands;Faculty of Computer Science, Open Universiteit Nederland

  • Venue:
  • Electronic Notes in Theoretical Computer Science (ENTCS)
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

Turning type and effect deduction systems into an algorithm is a tedious and error-prone job, and usually results in an implementation that leaves no room to modify the solving strategy, without actually changing it. We employ constraints to declaratively specify the rules of a type system. Starting from a constraint based formulation of a type system, we introduce special combinators in the type rules to specify in which order constraints may be solved. A solving strategy can then be chosen by giving a particular interpretation to these combinators, and the resulting list of constraints can be fed into a constraint solver; thus the gap between the declarative specification and the deterministic implementation is bridged. This design makes the solver simpler and easier to reuse. Our combinators have been used in the development of a real-life compiler.