A Church-Style Intermediate Language for ML F [chapter]

Didier Rémy, Boris Yakobowski
2010 Lecture Notes in Computer Science  
ML F is a type system that seamlessly merges ML-style implicit but second-class polymorphism with System-F explicit first-class polymorphism. We present x ML F , a Church-style version of ML F with full type information that can easily be maintained during reduction. All parameters of functions are explicitly typed and both type abstraction and type instantiation are explicit. However, type instantiation in x ML F is more general than type application in System F. We equip x ML F with a
more » ... ep reduction semantics that allows reduction in any context, and show that this relation is confluent and type preserving. We also show that both subject reduction and progress hold for weak-reduction strategies, including call-by-value with the value-restriction. We exhibit a type preserving encoding of ML F into x ML F , which shows that x ML F can be used as the internal language for ML F after type inference, and also ensures type soundness for the most expressive variant of ML F .
doi:10.1007/978-3-642-12251-4_4 fatcat:ln2pzae3uzgbnpxvnjv4gqjuwa