For decades programmers have had access to production-quality tools for generating lexers and parsers from high-level declarative specifications. Recent work on nano-pass compiler frameworks [3] makes it possible to develop a many-pass compiler using a grammar-based domain-specific language. Yet we still do not have mature, flexible tools for generating efficient type checkers and type inferencers from a high-level description (ideally, directly from the typing judgements). Although researchers use logic programming, term writing, and proof assis-tants to express type systems in a declarative fashion, in practice developers— including computer science researchers—write production type inferencers and type checkers by hand using general-purp...
Meseguer and Rosu proposed rewriting logic semantics (RLS) as a programming language definitional fr...
Abstract. The traditional purpose of types in programming languages of providing correctness assuran...
Many frameworks have been proposed for deriving specific runtime properties, but there is still a la...
AbstractType inference is the compile-time process of reconstructing missing type information in a p...
For my grandfather. iv In this thesis I present a higher order logic programming language, Cale-don,...
Scientists want to encode their applications in domain languages with high-level operators that refl...
Certifying compilers generate proofs for low-level code that guarantee safety properties of the code...
Compiler-compilers are tools that generate substitutes for hand-written compiler components from hig...
to find the "best" or "most general" type (called the principal type in the case...
Whenever code generation is used to abstract from low-level details or to provide high-level interfa...
The relationship between a type system’s specification and the implementation of the type checker is...
Abstract—Type qualifier inference tools usually operate in batch mode and assume that the program mu...
The Typed Smalltalk project is building an optimizing compiler for a variant of Smalltalk. Typed Sma...
Compilers for monomorphic languages, such as C and Pascal, take advantage of types to determine data...
Type inference is a key component of modern statically typed programming languages. It allows progra...
Meseguer and Rosu proposed rewriting logic semantics (RLS) as a programming language definitional fr...
Abstract. The traditional purpose of types in programming languages of providing correctness assuran...
Many frameworks have been proposed for deriving specific runtime properties, but there is still a la...
AbstractType inference is the compile-time process of reconstructing missing type information in a p...
For my grandfather. iv In this thesis I present a higher order logic programming language, Cale-don,...
Scientists want to encode their applications in domain languages with high-level operators that refl...
Certifying compilers generate proofs for low-level code that guarantee safety properties of the code...
Compiler-compilers are tools that generate substitutes for hand-written compiler components from hig...
to find the "best" or "most general" type (called the principal type in the case...
Whenever code generation is used to abstract from low-level details or to provide high-level interfa...
The relationship between a type system’s specification and the implementation of the type checker is...
Abstract—Type qualifier inference tools usually operate in batch mode and assume that the program mu...
The Typed Smalltalk project is building an optimizing compiler for a variant of Smalltalk. Typed Sma...
Compilers for monomorphic languages, such as C and Pascal, take advantage of types to determine data...
Type inference is a key component of modern statically typed programming languages. It allows progra...
Meseguer and Rosu proposed rewriting logic semantics (RLS) as a programming language definitional fr...
Abstract. The traditional purpose of types in programming languages of providing correctness assuran...
Many frameworks have been proposed for deriving specific runtime properties, but there is still a la...