Strategies for Solving Constraints in Type and Effect Systems

Jurriaan Hage, Bastiaan Heeren

Research output: Contribution to journalArticlepeer-review

13 Citations (Scopus)


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.
Original languageEnglish
Pages (from-to)163-183
Number of pages21
JournalElectronic Notes in Theoretical Computer Science
Publication statusPublished - 2 Apr 2009


Dive into the research topics of 'Strategies for Solving Constraints in Type and Effect Systems'. Together they form a unique fingerprint.

Cite this