AbstractWe show how restructuring a denotational definition leads to a more efficient compiling algorithm. Two semantics-preserving transformations (static replacement and factoring) are used to convert a continuation semantics into a formal description of a semantic analyzer and translator. The translation algorithm derived below performs type checking before code generation so that type-checking instructions may be omitted from the target code. The translation is proved correct with respect to the original definition of the source language. The proof consists of showing that both transformations preserve the semantics of the source language
Compilers for higher-order programming languages like Scheme, ML, and Lisp can be broadly characteri...
Natural semantics specifications have become mainstream in the formal specification of programming l...
We show how some classical static analyses for imperative programs, and the optimizing transformatio...
AbstractWe show how restructuring a denotational definition leads to a more efficient compiling algo...
AbstractWe show how restructuring a denotational definition leads to a more efficient compiling algo...
Program transformations are frequently performed by optimizing compilers, and the correctness of app...
We show that abstract interpretation-based static program analysis can be made ecient and precise en...
RIT department of computer science technical report. Correctness is a crucial property for compilers...
AbstractWe examine the problem of automatically extracting a static semantics from a language's sema...
AbstractAn approach to the correctness proof of static semantics with respect to the standard semant...
We define syntactic transformations that con-vert continuation passing style (CPS) programs into sta...
A methodology is described for generating provably correct compilers from denotational definitions ...
Program transformations are frequently performed by optimizing compilers and the correctness of app...
The essence of compiling with continuations is that conversion to continuation-passing style (CPS) i...
It is suggested that denotational semantic definitions of programming languages should be based on ...
Compilers for higher-order programming languages like Scheme, ML, and Lisp can be broadly characteri...
Natural semantics specifications have become mainstream in the formal specification of programming l...
We show how some classical static analyses for imperative programs, and the optimizing transformatio...
AbstractWe show how restructuring a denotational definition leads to a more efficient compiling algo...
AbstractWe show how restructuring a denotational definition leads to a more efficient compiling algo...
Program transformations are frequently performed by optimizing compilers, and the correctness of app...
We show that abstract interpretation-based static program analysis can be made ecient and precise en...
RIT department of computer science technical report. Correctness is a crucial property for compilers...
AbstractWe examine the problem of automatically extracting a static semantics from a language's sema...
AbstractAn approach to the correctness proof of static semantics with respect to the standard semant...
We define syntactic transformations that con-vert continuation passing style (CPS) programs into sta...
A methodology is described for generating provably correct compilers from denotational definitions ...
Program transformations are frequently performed by optimizing compilers and the correctness of app...
The essence of compiling with continuations is that conversion to continuation-passing style (CPS) i...
It is suggested that denotational semantic definitions of programming languages should be based on ...
Compilers for higher-order programming languages like Scheme, ML, and Lisp can be broadly characteri...
Natural semantics specifications have become mainstream in the formal specification of programming l...
We show how some classical static analyses for imperative programs, and the optimizing transformatio...