Last weeks meeting notes

Tom Van Cutsem tvcutsem at vub.ac.be
Wed Aug 5 04:17:37 PDT 2009


> None of this addresses the "climbing the meta ladder" observation/ 
> objection from Waldemar. The mirages approach based on mirrors may  
> -- Mark cited this paper:
>
> http://prog.vub.ac.be/Publications/2007/vub-prog-tr-07-16.pdf


In a nutshell: mirages mitigate some of the issues with meta-regress  
by requiring the 'catch-all handler' to be attached to an object when  
the object is defined. Think of a mirage as an object with a  
statically-known catch-all handler. Hence, it is known at compile-time  
whether or not an object's property access should be intercepted and  
even which specific operations (has,get,set,invoke,...) are redefined.  
Primitive actions performed on mirages can still run arbitrary code,  
but the scope of the problem is restricted to mirages, not to  
arbitrary objects.

While there are uses of catch-all handlers for which the static  
binding of the handler is not an issue, for other use cases it  
probably is. Statically binding the catch-all handler to an object  
requires foresight on behalf of the creator of the object: it's not  
possible to bind a catch-all handler to an object after it has been  
created.

For those that would still be interested in reading the paper: it is  
largely superseded by the following journal article: dx.doi.org/ 
10.1002/spe.909 (if you are interested in the full-text pdf, I can  
send it to you)

Kind regards,
Tom


More information about the es-discuss mailing list