Waterfall: Primitives Generation on the Fly
Type de document :
Pré-publication ou Document de travail
Titre :
Waterfall: Primitives Generation on the Fly
Auteur(s) :
Chari, Guido [Auteur]
Laboratory on Foundations and Tools for Software Engineering [Buenos Aires] [LAFHIS]
Garbervetsky, Diego [Auteur]
Laboratory on Foundations and Tools for Software Engineering [Buenos Aires] [LAFHIS]
Bruni, Camillo [Auteur]
Analyses and Languages Constructs for Object-Oriented Application Evolution [RMOD]
Denker, Marcus [Auteur]
Analyses and Languages Constructs for Object-Oriented Application Evolution [RMOD]
Ducasse, Stephane [Auteur]
Analyses and Languages Constructs for Object-Oriented Application Evolution [RMOD]
Laboratory on Foundations and Tools for Software Engineering [Buenos Aires] [LAFHIS]
Garbervetsky, Diego [Auteur]
Laboratory on Foundations and Tools for Software Engineering [Buenos Aires] [LAFHIS]
Bruni, Camillo [Auteur]
Analyses and Languages Constructs for Object-Oriented Application Evolution [RMOD]
Denker, Marcus [Auteur]

Analyses and Languages Constructs for Object-Oriented Application Evolution [RMOD]
Ducasse, Stephane [Auteur]

Analyses and Languages Constructs for Object-Oriented Application Evolution [RMOD]
Discipline(s) HAL :
Informatique [cs]/Langage de programmation [cs.PL]
Résumé en anglais : [en]
Modern languages are typically supported by managed runtimes (Virtual Machines). Since VMs have to deal with many concepts such as memory management, abstract execution model and scheduling, they tend to be very complex. ...
Lire la suite >Modern languages are typically supported by managed runtimes (Virtual Machines). Since VMs have to deal with many concepts such as memory management, abstract execution model and scheduling, they tend to be very complex. Additionally, VMs have to meet strong performance requirements. This demand of performance is one of the main reasons why many VMs are built statically. Thus, design decisions are frozen at compile time preventing changes at runtime. One clear example is the impossibility to dynamically adapt or change primitives of the VM once it has been compiled. In this work we present a toolchain that allows for altering and configuring components such as primitives and plug-ins at runtime. The main contribution is Waterfall, a dynamic and reflective translator from Slang, a restricted subset of Smalltalk, to native code. Waterfall generates primitives on demand and executes them on the fly. We validate our approach by implementing dynamic primitive modification and runtime customization of VM plug-ins.Lire moins >
Lire la suite >Modern languages are typically supported by managed runtimes (Virtual Machines). Since VMs have to deal with many concepts such as memory management, abstract execution model and scheduling, they tend to be very complex. Additionally, VMs have to meet strong performance requirements. This demand of performance is one of the main reasons why many VMs are built statically. Thus, design decisions are frozen at compile time preventing changes at runtime. One clear example is the impossibility to dynamically adapt or change primitives of the VM once it has been compiled. In this work we present a toolchain that allows for altering and configuring components such as primitives and plug-ins at runtime. The main contribution is Waterfall, a dynamic and reflective translator from Slang, a restricted subset of Smalltalk, to native code. Waterfall generates primitives on demand and executes them on the fly. We validate our approach by implementing dynamic primitive modification and runtime customization of VM plug-ins.Lire moins >
Langue :
Anglais
Projet Européen :
Collections :
Source :
Fichiers
- https://hal.inria.fr/hal-00871353/document
- Accès libre
- Accéder au document
- http://arxiv.org/pdf/1310.2741
- Accès libre
- Accéder au document
- https://hal.inria.fr/hal-00871353/document
- Accès libre
- Accéder au document
- document
- Accès libre
- Accéder au document
- Waterfall.pdf
- Accès libre
- Accéder au document
- 1310.2741
- Accès libre
- Accéder au document
- document
- Accès libre
- Accéder au document
- Waterfall.pdf
- Accès libre
- Accéder au document