Work on the TILT compiler for Standard ML led us to study a language with singleton kinds: S(A) is the kind of all types provably equivalent to the type A. Singletons are interesting because they provide a very general form of definitions for type variables and allow fine-grained control of type computations. Internally, TILT represents programs using a predicative variant of Girard's F! enriched with singleton kinds, dependent product and function kinds (\Sigma and \Pi), and a sub-kinding relation. An important benefit of using a typed language as the representation of programs is that typechecking can detect many common compiler implementation errors. However, the decidability of typechecking for our particular representation is not ...
AbstractTwo types theories, ATT and ATTT, are introduced. ATT is an impredicative type theory closel...
Traditional techniques for implementing polymorphism use auniversal representation for objects of un...
We demonstrate the pragmatic value of the principal typing property, a property more general than M...
Singleton kinds provide an elegant device for expressing type equality information resulting from mo...
Singleton kinds provide an elegant device for expressing type equality information resulting from mo...
The definition of type equivalence is one of the most important design issues for any typed language...
Compilers for monomorphic languages, such as C and Pascal, take advantage of types to determine data...
We study the λS ≤ calculus, which contains singleton types S(M) classifying terms of base type prova...
Type inference is a key component of modern statically typed programming languages. It allows progra...
to find the "best" or "most general" type (called the principal type in the case...
Abstract. The traditional purpose of types in programming languages of providing correctness assuran...
There exists an identifiable programming style based on the widespread use of type information handl...
The ML programming language restricts type polymorphism to occur only in the "let-in" construct and ...
It has been nearly twenty years since Robin Milner introduced ML as the metalanguage of the LCF inte...
Abstract. Type information has many applications, it can be used for optimized compilation, terminat...
AbstractTwo types theories, ATT and ATTT, are introduced. ATT is an impredicative type theory closel...
Traditional techniques for implementing polymorphism use auniversal representation for objects of un...
We demonstrate the pragmatic value of the principal typing property, a property more general than M...
Singleton kinds provide an elegant device for expressing type equality information resulting from mo...
Singleton kinds provide an elegant device for expressing type equality information resulting from mo...
The definition of type equivalence is one of the most important design issues for any typed language...
Compilers for monomorphic languages, such as C and Pascal, take advantage of types to determine data...
We study the λS ≤ calculus, which contains singleton types S(M) classifying terms of base type prova...
Type inference is a key component of modern statically typed programming languages. It allows progra...
to find the "best" or "most general" type (called the principal type in the case...
Abstract. The traditional purpose of types in programming languages of providing correctness assuran...
There exists an identifiable programming style based on the widespread use of type information handl...
The ML programming language restricts type polymorphism to occur only in the "let-in" construct and ...
It has been nearly twenty years since Robin Milner introduced ML as the metalanguage of the LCF inte...
Abstract. Type information has many applications, it can be used for optimized compilation, terminat...
AbstractTwo types theories, ATT and ATTT, are introduced. ATT is an impredicative type theory closel...
Traditional techniques for implementing polymorphism use auniversal representation for objects of un...
We demonstrate the pragmatic value of the principal typing property, a property more general than M...