Harmony Proxies in Firefox

Andreas Gal from Mozilla is implementing the Proxy API that I developed at Google in collaboration with Mark S. Miller. This API enables the creation of dynamic proxies that can intercept a variety of operations applied to Javascript objects. Proxies are currently available in the Firefox 3.7a pre-release and are scheduled to be included in the next Ecmascript standard. I am in the process of writing up a small tutorial to introduce this new feature. A draft specification of the feature for inclusion into ECMAScript harmony is available, and a Google Tech Talk that explains the rationale of our design. Javascript proxies were in part inspired by my earlier work on mirages in AmbientTalk.

JavaScript at Google Research

I am currently a Visiting Faculty member at Google in Mountain View, USA. Together with Mark Miller I am experimenting with proposed extensions to the Javascript programming language. Concretely:

  • We proposed proxies for inclusion in a future ECMAScript standard. This proposal is based on the reflective architecture of AmbientTalk.
  • We created an OMeta-based parser for the latest ECMAScript standard (edition 5). This parser is used in a meta-circular experimental interpreter and a verifier for SES, a secure subset of ECMAScript.
  • We have implemented a traits library for Javascript, enabling the robust composition of objects via reusable traits.