The use of typed intermediate languages can significantly increase the reliability of a compiler. By type-checking the code produced at each transformation stage, one can identify bugs in the compiler that would otherwise be much harder to find. Also it guarantees that any property that was enforced by the source-level type-system is holds also for the generated code. Recently, several people have tried to push this effort a bit further by verifying formally that the compiler indeed preserves typing. This is usually done with proof assistants or experimental languages. Instead, we decided to use Haskell, to see how far we can go with a more mainstream system, supported by robust compilers and plentiful libraries. This article presents one p...
We report on an extension of Haskell with type(-level) functions and equality constraints. We illust...
This thesis contains a description of an implementation of an extended subset of the programming lan...
Type family applications in Haskell must be fully saturated. This means that all type-level function...
The use of typed intermediate languages can significantly increase the reliability of a compiler. By...
AbstractThe use of typed intermediate languages can significantly increase the reliability of a comp...
Multi-parameter type classes, functional dependencies, and re-cently GADTs and open type families op...
We describe the implementation of a type checker for the functional programming language Haskell tha...
Static typing is one of the most prominent techniques in the design of programming languages for mak...
Haskell has a rich type system with various complementary, interacting and overlapping features. In ...
Haskell is an influential functional programming language with an advanced type system that is capab...
John Hughes presents a new method for performing partial evaluation in [Hug96b]. The method is calle...
In this thesis we address a long-term maintainability problem in Haskell type class system. In parti...
System FC, the core language of the Glasgow Haskell Compiler, is an explicitly-typed variant of Syst...
Although the functional programming language Haskell has a powerful type class system, users frequen...
The relationship between a type system’s specification and the implementation of the type checker is...
We report on an extension of Haskell with type(-level) functions and equality constraints. We illust...
This thesis contains a description of an implementation of an extended subset of the programming lan...
Type family applications in Haskell must be fully saturated. This means that all type-level function...
The use of typed intermediate languages can significantly increase the reliability of a compiler. By...
AbstractThe use of typed intermediate languages can significantly increase the reliability of a comp...
Multi-parameter type classes, functional dependencies, and re-cently GADTs and open type families op...
We describe the implementation of a type checker for the functional programming language Haskell tha...
Static typing is one of the most prominent techniques in the design of programming languages for mak...
Haskell has a rich type system with various complementary, interacting and overlapping features. In ...
Haskell is an influential functional programming language with an advanced type system that is capab...
John Hughes presents a new method for performing partial evaluation in [Hug96b]. The method is calle...
In this thesis we address a long-term maintainability problem in Haskell type class system. In parti...
System FC, the core language of the Glasgow Haskell Compiler, is an explicitly-typed variant of Syst...
Although the functional programming language Haskell has a powerful type class system, users frequen...
The relationship between a type system’s specification and the implementation of the type checker is...
We report on an extension of Haskell with type(-level) functions and equality constraints. We illust...
This thesis contains a description of an implementation of an extended subset of the programming lan...
Type family applications in Haskell must be fully saturated. This means that all type-level function...