Databases in theory and practice
Databases in theory and practice
Putting type annotations to work
POPL '96 Proceedings of the 23rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
First-class polymorphism with type inference
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Semi-explicit first-class polymorphism for ML
Information and Computation
MLF: raising ML to the power of system F
ICFP '03 Proceedings of the eighth ACM SIGPLAN international conference on Functional programming
Proceedings of the tenth ACM SIGPLAN international conference on Functional programming
Boxy types: inference for higher-rank types and impredicativity
Proceedings of the eleventh ACM SIGPLAN international conference on Functional programming
A graphical presentation of MLF types with a linear-time unification algorithm
TLDI '07 Proceedings of the 2007 ACM SIGPLAN international workshop on Types in languages design and implementation
Practical type inference for arbitrary-rank types
Journal of Functional Programming
From ML to MLF: graphic type constraints with efficient type inference
Proceedings of the 13th ACM SIGPLAN international conference on Functional programming
HMF: simple type inference for first-class polymorphism
Proceedings of the 13th ACM SIGPLAN international conference on Functional programming
FPH: first-class polymorphism for Haskell
Proceedings of the 13th ACM SIGPLAN international conference on Functional programming
Flexible types: robust type inference for first-class polymorphism
Proceedings of the 36th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Information and Computation
Harnessing MLFwith the power of system F
MFCS'10 Proceedings of the 35th international conference on Mathematical foundations of computer science
On the power of coercion abstraction
POPL '12 Proceedings of the 39th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Strong normalization of MLF via a calculus of coercions
Theoretical Computer Science
A church-style intermediate language for MLF
FLOPS'10 Proceedings of the 10th international conference on Functional and Logic Programming
A church-style intermediate language for MLF
Theoretical Computer Science
Hi-index | 0.00 |
The MLF type system by Le Botlan and Rémy is a natural extension of Hindley-Milner type inference that supports full first-class polymorphism, where types can be of higher-rank and impredicatively instantiated. Even though MLF is theoretically very attractive, it has not seen widespread adoption. We believe that this partly because it is unclear how the rich language of MLF types relate to standard System F types. In this article we give the first type directed translation of MLF terms to System F terms. Based on insight gained from this translation, we also define "Rigid MLF" (MLF=), a restriction of MLF where all bound values have a System F type. The expressiveness of MLF= is the same as that of boxy types, but MLF= needs fewer annotations and we give a detailed comparison between them.