We show how programming language semantics and definitions of their corresponding type systems can both be written in a single framework amenable to proofs of soundness. The framework is based on full rewriting logic (not to be confused with context reduction or term rewriting), where rules can match anywhere in a term (or configuration). We present an extension of the syntactic approach to proving type system soundness presented by Wright and Felleisen [1994] that works in the above described semantics-based domain. As before, the properties of preservation and progress are crucial. We use an abstraction function to relate semantic configurations in the language domain to semantic configurations in the type domain, and then proceed to u...
Type systems for static programming languages are supposed to ensure the absence of type errors in c...
Most specification languages have a type system. Type systems are hard to get right, and getting the...
. We address the problem of defining an algebraic framework for modularization supporting separate t...
We show how programming language semantics and definitions of their corresponding type systems can b...
Meseguer and Rosu proposed rewriting logic semantics (RLS) as a programming language definitional fr...
Dedicated to the memory of Ole-Johan Dahl Abstract. The logical and operational aspects of rewriting...
We develop an explicit two level system that allows programmers to reason about the behavior of effe...
We describe a derivational approach to proving the equivalence of different representations of a typ...
International audienceWe present a formalism called Addressed Term Rewriting Systems, which can be u...
Software systems are ubiquitous. Failure in safety- and security-critical systems, e.g., the control...
Mechanisation of programming language research is of growing interest, and the act of mechanising ty...
International audienceDependently typed programming languages and proof assistants such as Agda and ...
There exists an identifiable programming style based on the widespread use of type information handl...
Dependently typed programming languages and proof assistants such as Agda and Coq rely on computatio...
Types are the central organizing principle of the theory of programming languages. Language features...
Type systems for static programming languages are supposed to ensure the absence of type errors in c...
Most specification languages have a type system. Type systems are hard to get right, and getting the...
. We address the problem of defining an algebraic framework for modularization supporting separate t...
We show how programming language semantics and definitions of their corresponding type systems can b...
Meseguer and Rosu proposed rewriting logic semantics (RLS) as a programming language definitional fr...
Dedicated to the memory of Ole-Johan Dahl Abstract. The logical and operational aspects of rewriting...
We develop an explicit two level system that allows programmers to reason about the behavior of effe...
We describe a derivational approach to proving the equivalence of different representations of a typ...
International audienceWe present a formalism called Addressed Term Rewriting Systems, which can be u...
Software systems are ubiquitous. Failure in safety- and security-critical systems, e.g., the control...
Mechanisation of programming language research is of growing interest, and the act of mechanising ty...
International audienceDependently typed programming languages and proof assistants such as Agda and ...
There exists an identifiable programming style based on the widespread use of type information handl...
Dependently typed programming languages and proof assistants such as Agda and Coq rely on computatio...
Types are the central organizing principle of the theory of programming languages. Language features...
Type systems for static programming languages are supposed to ensure the absence of type errors in c...
Most specification languages have a type system. Type systems are hard to get right, and getting the...
. We address the problem of defining an algebraic framework for modularization supporting separate t...