A Virtual-Machine Metaobject Protocol for Run-Time Software Adaptation
Most programming languages providing support for modifying an application’s behavior at run time run on top of a Virtual Machine (VM). In general, the VM is inaccessible for the applications. We argue that the lack of means for applications to interact with the VM limits the adaptation capabilities of running programs. To overcome this situation we explore an API (in the form of a metaobject protocol) which provides support for applications to observe and modify their underlying VM to changing requirements. We implement this API and assess how it deals with unanticipated dynamic adaptation scenarios for security, optimization, and profiling aspects. In contrast to existing alternatives, our approach is able to handle all adaptation scenarios, using less code, and without interfering with the application’s logic.
Sat 6 AprDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
13:30 - 15:30 | Behavioural Types for API-based softwareBEHAPI at S4 (BEHAPI) Chair(s): emilio tuosto University of Leicester | ||
13:30 30mTalk | Mailbox Types for Unordered Interactions BEHAPI | ||
14:00 30mTalk | A Behavioural Type System for Mungo with Generics BEHAPI | ||
14:30 30mTalk | A Virtual-Machine Metaobject Protocol for Run-Time Software Adaptation BEHAPI Guido Chari Czech Technical University, Czechia | ||
15:00 30mTalk | Hardware Interactions as Behavioural Types. BEHAPI Francisco Martins University of Lisbon |