The task of designing and implementing a compiler can be a di#cult and error-prone process. In this paper, we present a new approach based on the use of higher-order abstract syntax and term rewriting in a logical framework. All program transformations, from parsing to code generation, are cleanly isolated and specified as term rewrites. This has several advantages. The correctness of the compiler depends solely on a small set of rewrite rules that are written in the language of formal mathematics. In addition, the logical framework guarantees the preservation of scoping, and it automates many frequently-occurring tasks including substitution and rewriting strategies. As we show, compiler development in a logical framework can be easier tha...
We present a Coq-based system to certify the entire process of implementing declarative mathematical...
AbstractCurrent methodology for compiler construction evolved in small increments over a long period...
It is suggested that denotational semantic definitions of programming languages should be based on ...
he task of designing and implementing a compiler can be a difficult and error-prone process. In this...
The task of designing and implementing a compiler can be a difficult and error-prone process. In thi...
The task of designing and implementing a compiler can be a difficult and error-prone process. In thi...
Given a complete, formal description of the semantics of a programming language, it should be possib...
This paper describes a completely automated method for generating efficient and competitive interpre...
A compiler generator is described which produces compilers competitive with handwritten ones in comp...
Several recently developed semantics systems automatically generate compilers from denotational desc...
Previous work on formally modelling and analysing program compilation has shown the need for a simpl...
This paper introduces the basic concepts of the rewriting logic language Maude and discusses its imp...
my father- in memoriam. my mother, Daniel, my sisters and brothers.- II-We describe a method for the...
Formal methods are not used widely in industrial software development, because the overhead of forma...
Current methodology for compiler construction evolved from the need to release programmers form the ...
We present a Coq-based system to certify the entire process of implementing declarative mathematical...
AbstractCurrent methodology for compiler construction evolved in small increments over a long period...
It is suggested that denotational semantic definitions of programming languages should be based on ...
he task of designing and implementing a compiler can be a difficult and error-prone process. In this...
The task of designing and implementing a compiler can be a difficult and error-prone process. In thi...
The task of designing and implementing a compiler can be a difficult and error-prone process. In thi...
Given a complete, formal description of the semantics of a programming language, it should be possib...
This paper describes a completely automated method for generating efficient and competitive interpre...
A compiler generator is described which produces compilers competitive with handwritten ones in comp...
Several recently developed semantics systems automatically generate compilers from denotational desc...
Previous work on formally modelling and analysing program compilation has shown the need for a simpl...
This paper introduces the basic concepts of the rewriting logic language Maude and discusses its imp...
my father- in memoriam. my mother, Daniel, my sisters and brothers.- II-We describe a method for the...
Formal methods are not used widely in industrial software development, because the overhead of forma...
Current methodology for compiler construction evolved from the need to release programmers form the ...
We present a Coq-based system to certify the entire process of implementing declarative mathematical...
AbstractCurrent methodology for compiler construction evolved in small increments over a long period...
It is suggested that denotational semantic definitions of programming languages should be based on ...