Abstract. Restricting destructive update to values of a distinguished reference type prevents functions from being polymorphic in the muta-bility of their arguments. This restriction makes it easier to reason about program behaviour during transformation, but the lack of polymorphism reduces the expressiveness of the language. We present a System-F style core language that uses dependently kinded proof witnesses to encode information about the mutability of values and the purity of computa-tions. We support mixed strict and lazy evaluation, and use our type system to ensure that only computations without visible side effects are suspended.
Most dependently-typed programming languages either require that all expressions terminate (e.g. Coq...
The standard formulation of bounded quantification, system F , is difficult to work with and lacks i...
Systems programs rely on fine-grain control of data representa-tion and use of state to achieve perf...
Restricting destructive update to values of a distinguished reference type prevents functions from b...
Most type systems that support polymorphic functions are based on a version of System-F. We argue th...
Most type systems that support polymorphic functions are based on a version of System-F. We argue th...
We present a safe embedding of mutable data structures in functional languages. With safety we mean ...
Polymorphism is an important language feature, allowing generic code to operate on many different ty...
The interactive verification system VeriFun is based on a polymorphic call-by-value functional langu...
International audienceWe present a new, completely redesigned, version of F*, a language that works ...
We explore partial type-inference for System F based on type-containment. We consider both cases of ...
Simple, partial type-inference for System F based on type-containment We explore partial type-infere...
A certified binary is a value together with a proof that the value satisfies a given specification. ...
The dependency core calculus (DCC) is a framework for studying a variety of dependency analyses (e.g...
There has long been speculation in the scientific literature on how to dynamically enforce parametri...
Most dependently-typed programming languages either require that all expressions terminate (e.g. Coq...
The standard formulation of bounded quantification, system F , is difficult to work with and lacks i...
Systems programs rely on fine-grain control of data representa-tion and use of state to achieve perf...
Restricting destructive update to values of a distinguished reference type prevents functions from b...
Most type systems that support polymorphic functions are based on a version of System-F. We argue th...
Most type systems that support polymorphic functions are based on a version of System-F. We argue th...
We present a safe embedding of mutable data structures in functional languages. With safety we mean ...
Polymorphism is an important language feature, allowing generic code to operate on many different ty...
The interactive verification system VeriFun is based on a polymorphic call-by-value functional langu...
International audienceWe present a new, completely redesigned, version of F*, a language that works ...
We explore partial type-inference for System F based on type-containment. We consider both cases of ...
Simple, partial type-inference for System F based on type-containment We explore partial type-infere...
A certified binary is a value together with a proof that the value satisfies a given specification. ...
The dependency core calculus (DCC) is a framework for studying a variety of dependency analyses (e.g...
There has long been speculation in the scientific literature on how to dynamically enforce parametri...
Most dependently-typed programming languages either require that all expressions terminate (e.g. Coq...
The standard formulation of bounded quantification, system F , is difficult to work with and lacks i...
Systems programs rely on fine-grain control of data representa-tion and use of state to achieve perf...