EOL Syntax Updates

In 0.8.8 we extended the syntax of EOL so that it looks and feels a bit more like Java(script). As the majority of Eclipse/EMF audience are Java programmers, this will hopefully make their (and our) lives a bit easier. Of course, all these changes also affect all languages built on top of EOL.

More specifically, we have introduced:

  • double quotes (" ") for string literals,
  • backticks (` `) for reserved words,
  • Java-like comments (// and /**/),
  • == as a comparison operator,
  • = as an assignment opperator (in 0.8.7)
All these changes (except for the double quotes which have now been replaced by ` `) are non-breaking: the old syntax ('' for strings, = for comparison, := for assignment and -- and -**- for comments still work). Below is an example demonstrating the new syntax:

/*
 This is a multi line comment
*/
// This is a single line comment
var i = 1;
if (i == 1) {
  "Hello World".println();
}

i = 2; // Assigns the value 2 to i

var `variable with spaces` = 3;
`variable with spaces`.println(); // Prints 3

If you have suggestions for further Java-ifications of the EOL syntax, please post your comments to the Epsilon forum or add them to bug 292403.