Sciweavers

OOPSLA
2005
Springer

Constructing a metacircular Virtual machine in an exploratory programming environment

14 years 6 months ago
Constructing a metacircular Virtual machine in an exploratory programming environment
Can virtual machine developers benefit from religiously observing the principles more often embraced for exploratory programming? To find out, we are concurrently constructing two artifacts—a Self VM entirely in Self (the Klein VM), and a specialized development environment—with strict adherence to pure object-orientation, metacircularity, heavy code reuse, reactivity, and mirror-based reflection. Although neither artifact is yet complete, the environment supports many remote debugging and incremental update operations, and the exported virtual machine has successfully run the whole compiler. As a result of our adherence to these principles, there have been both positive and negative consequences. We have been able to find and exploit many opportunities for parsimony. For example, the very same code creates objects in the bootstrap image, builds objects in the running VM, and implements a remote debugger. On the other hand, we have been forced to expend effort to optimize the perf...
David Ungar, Adam Spitz, Alex Ausch
Added 28 Jun 2010
Updated 28 Jun 2010
Type Conference
Year 2005
Where OOPSLA
Authors David Ungar, Adam Spitz, Alex Ausch
Comments (0)