The C++ programming language (2nd ed.)
The C++ programming language (2nd ed.)
Normal form approach to compiler design
Acta Informatica
Modular Compiler Verification: A Refinement-Algebraic Approach Advocating Stepwise Abstraction
Modular Compiler Verification: A Refinement-Algebraic Approach Advocating Stepwise Abstraction
Java and the Java Virtual Machine: Definition, Verification, Validation with Cdrom
Java and the Java Virtual Machine: Definition, Verification, Validation with Cdrom
A Weakest Precondition Semantics for Refinement of Object-Oriented Programs
IEEE Transactions on Software Engineering
Hi-index | 0.00 |
In this paper we propose an strategy for the design of compilers correct by construction for object-oriented languages. The process is formalized within a single and uniform semantic framework of an object-oriented language based on a subset of sequential Java and its algebraic laws. The strategy is to reduce an arbitrary source program to a particular normal form which describes the behavior of the target machine. This behavior is defined by an interpreter written in the same language. From the interpreter we can capture the sequence of generated bytecodes of the target machine. The normal form reduction is formalized as algebraic transformations where the central notion is refinement of programs.