The Javascript for EMF (JS4EMF) project's objective is to provide Javascript support for EMF. The goal is to make it easier to implement Ecore model behavior (constraints, operations and derived features), author scripts for manipulating Ecore data, implement editor commands without a costly compile, build and launch cycle and otherwise customize EMF-based tools using scripts.
This project was just provisioned. You can see the proposal here
JS4EMF supports using Javascript's dot and bracket notation for accessing Ecore attributes, references and operations. There is special support for accessing named children in a hierarchy, e.g. EClasses within EPackages. Works with both generated Java code and dynamic EMF objects.
JS4EMF implements EMF's delegates for supporting third-party languages, so you can implement constraints, invariants, derived features and operations in Javascript. JS4EMF provides a special script view for making it easier to add the neccessary annotations.
JS4EMF supports attaching extra methods to your EClasses, to make scripting even easier. Extra methods can either be embedded in the model using annotations or in separate js-files. Existing EMF classes, like EObject, EEList and EClass have already been extended, for your convenience.
Read the JS4EMF documentation and join the discussion at the forum to understand how to utilize JS4EMF.
Want to know more? About JS4EMF
JS4EMF is currently in the Validation (Incubation) Phase.
We're in the process of moving code from e4, cleaning up the API and improving the tests and documentation. A release is planned for the first half of 2011.