Framing Programming Languages

Designing and Using a Frame-Based Virtual Machine

Master Thesis (2021)
Author(s)

B. Crielaard (TU Delft - Electrical Engineering, Mathematics and Computer Science)

Contributor(s)

E Visser – Mentor (TU Delft - Programming Languages)

Casper Bach – Graduation committee member (TU Delft - Programming Languages)

Jan Rellermeyer – Coach (TU Delft - Data-Intensive Systems)

Faculty
Electrical Engineering, Mathematics and Computer Science
Copyright
© 2021 Bram Crielaard
More Info
expand_more
Publication Year
2021
Language
English
Copyright
© 2021 Bram Crielaard
Graduation Date
21-04-2021
Awarding Institution
Delft University of Technology
Programme
Computer Science
Faculty
Electrical Engineering, Mathematics and Computer Science
Reuse Rights

Other than for strictly personal use, it is not permitted to download, forward or distribute the text or part of it, without the consent of the author(s) and/or copyright holder(s), unless the work is under an open content license such as Creative Commons.

Abstract

This thesis introduces the FrameVM virtual machine and the Framed language. This language gives developers a target to compile to which concisely follows the scopes-as-frames model. This model allows language developers to derive the memory model based on the scope graphs. The core building blocks of Framed are frames, which contain all data including code. To demonstrate the viability of this model this paper also introduces a compiler from Scheme to Framed, focussing on complex control structures such as call-with-current-continuation and closures. As a result we aim to show that Framed is usable as a target language for compiling, even though it does not have a stack nor registers.

Files

License info not available