Framing Programming Languages: Designing and Using a Frame-Based Virtual Machine
Bram Crielaard
Date: Wed, April 21, 2021
Time: 10:00
Room: Eelco's Zoom Room
Note: This is a MSc thesis defense
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.
Previous:
| Framing Programming Languages: Designing and Using a Frame-Based Virtual Machine
Next:
| Verifying the Semantics of Disambiguation Rules: Using Parse Tree Repairing for Showing Safety and Completeness of Associativity and Priority Rules