The use of typed intermediate languages can significantly increase the reliability of a compiler. By typechecking the code produced at each transformation stage, one can identify...
Feature-Oriented Software Development provides a multitude of formalisms, methods, languages, and tools for building variable, customizable, and extensible software. Along differe...
We report on an extension of Haskell with open type-level functions and equality constraints that unifies earlier work on GADTs, functional dependencies, and associated types. The...
Tom Schrijvers, Simon L. Peyton Jones, Manuel M. T...
We present a general theory of Gifford-style type and effect annotations, where effect annotations are sets of effects. Generality is achieved by recourse to the theory of algebra...
The notion of control dependence underlies many program analysis and transformation techniques used in numerous applications. Despite wide application, existing definitions and ap...