[Squeak-e] Another Nested VM Proposal

Mark S. Miller markm at caplet.com
Tue Feb 4 16:22:52 CET 2003

At http://www.erights.org/javadoc/org/erights/e/elang/evm/Evaluator.html 
you'll find a strange old unimplemented proposal for handing E 
sub-expressions off to a reified evaluator while maintaining their lexical 
context. This proposal is strange because it enables one to introduce 
virtualization boundaries at expression granularity. This causes a 
complexity for E absent from Squeak-E: An E expression not only uses 
bindings introduced to its left, it also produces bindings that can be used 
by expressions on its right. As I recall, there's no corresponding issue in 

In any case, an actual API for introducing lexically scoped virtualization 
should probably be limited to object-definition-granularity.

Also, the above proposal doesn't take account of any of the subtle 
techniques that can make a big difference in the efficiency of 
virtualization. It may not preclude any of them either, but I haven't 
thought about it.


To build a safe and high-functionality system, one should start by building 
a safe and low functionality system, and then incrementally add 
functionality while preserving safety. The other way around doesn't work.

As fascinating as these issues are, I believe we should make Squeak-E safe 
and coherent (to something like the level E is). Once we have that, we'll be 
in a much better position to making it highly self-malleable. But during the 
whole process, let's keep talking about the ambitious things we'd like to 
do, so we don't paint ourselves into a corner.

Text by me above is hereby placed in the public domain


More information about the Squeak-e mailing list