Virtual Machines and Abstract Compilers - Towards a Compiler Pattern Language.

Julio García-Martín, Miguel Sutil-Martín · 2000

Because of the increasing gap between modern high-level programming languages and existing hardware, it has often become necessary to introduce intermediate languages and to build virtual machines on top of the hardware. This paper describes the VIRTUAL MACHINE and the ABSTRACT COMPILER patterns, a proposal that captures the essential features underlying the compilation processes based on staging transformation of virtual machines. Having as a support the VIRTUAL MACHINE pattern, we set out the task of compiling as a stepwise-refinement process guided by the ABSTRACT COMPILER pattern, so that the piecemeal acquisition of highperformance properties is posed in terms of relationships between intermediate virtual machines. Each phase during the compilation makes explicit some new features that are added to the global compilation process. The equivalence between one machine and the next is preserved though out the process. 1.

Read the paper · More papers on PaperTik