Ease Virtual Machine Level Tooling with Language Level Ordinary Object PointersVirtual
Virtual Machines (VMs) are programming language implementations. When tooling the VM level, developers face an important abstraction gap. VMs supporting an Object-oriented Programming language often manipulates their memory using addresses i.e., ordinary object pointers (OOPs), even though addresses are hidden in the language this VM supports. This discourages tooling at the VM level.
We propose language level OOP (LLOOP) to reduce abstraction gaps. LLOOP combine language and VM knowledge at the VM level to ease VM tooling. We present our implementation on the Pharo language. Moreover, we created two tools solving two real-world major bugs in the Pharo environment which required VM level support.
First, we investigate how to fix a meta error that was preventing a Pharo environment to open. We repair the broken environment by tracking and fixing the language level method responsible for the error at the VM level. Second, we investigate a corrupted Pharo image. A few objects in the Pharo memory space were corrupted i.e., the VM was not able to read and manipulate them. We are able to identify and remove the corrupted objects, fixing the Pharo environment.
Mon 5 DecDisplayed time zone: Auckland, Wellington change
10:30 - 12:00 | |||
10:30 5mTalk | Welcome Notes VMIL Stefan Marr University of Kent | ||
10:35 30mTalk | Ease Virtual Machine Level Tooling with Language Level Ordinary Object PointersVirtual VMIL Pierre Misse-Chanabier University of Lille; Inria; CNRS; Centrale Lille; UMR 9189 CRIStAL, Théo Rogliano University of Lille; Inria; CNRS; Centrale Lille; UMR 9189 CRIStAL DOI | ||
11:05 30mTalk | Inlining-Benefit Prediction with Interprocedural Partial Escape AnalysisVirtual VMIL Matthew Edwin Weingarten ETH Zurich; Oracle Labs, Theodoros Theodoridis ETH Zurich, Aleksandar Prokopec Oracle Labs DOI | ||
11:35 25mTalk | Toward a dynamic language toolkit Virtual VMIL Dave Mason Toronto Metropolitan University (formerly Ryerson University) |