EpsilonJ Translator
Developed Translator converts Role-based Java program written in EpsilonJ into Java

[29/07/2009] Version 2.2 (130KB) epsilonj_2_2.rar [3 sample programs included]
  Source Code ver. 2.2 (116KB) source_2_2.rar [see details below]
Click here for archives

Version 2.2

» How to execute translator:

1. Unzip file epsilonj_2_2.rar to obtain the directory contains executable epsilonj_2_2.jar, new version of ejc batch file, and 3 sample ej programs.
2. Make sure that the class path is set and java program can be compiled and run properly on the latest JRE.
3. Open command prompt console and change to the specified directory.
4. Execute the translation using ejc command with input ej program as argument: ejc Company.ej
5. Once the translation is completed without failures, the output java file will be created in current directory with the same name as input (e.g. Company.java).

» How to execute translated program:

1. Since the translated file contains only plain Java syntax, it can be compiled directly with javac command: javac Company.java.
2. If there is no any syntax error, a few related executable class files will be automatically generated in the same directory.
3. Then simply execute the main class with java command (e.g. java TestCompany) and see the output.

» EpsilonJ Program Requirements:

1. Input EpsilonJ program file should be denoted and saved with '.ej' extension for compatability reason.
2. The program must consist of only one context with any number of roles. Multiple players and any number of classes (at the same level of context) are also possible.
3. Main class must be named starting with 'Test' keyword. It will be more compatible if it is followed by the context name like 'TestCompany'.
4. Main class must be declared at the end of file, i.e. after the declarations of context, all players, and all other classes.

» Modifications in this version:

1. Some bugs related with the detailed translation were fixed in the parser.
2. Two more sample programs (Bit.ej & Printer.ej) are provided as a guide line for programming more complicated EpsilonJ programs.

» Source-Code Files:

1. The main source-code file is translator.jj written with Java Compiler-Compiler (JavaCC) generator, containing lexical analyzer and syntax parser for EpsilonJ.
2. The main compilable file is translator.java, which is a plain java program translated from translator.jj.
3. The main executable file is translator.class. Running this class file means executing the whole EpsilonJ Translator.
4. The other java/class files are just related with those main files, and were automatically generated by the JavaCC generator.

Epsilon Model & EpsilonJ

1. Introduction to Epsilon Model
2. EpsilonJ Specification
3. Related Publications: ACIS-SNPD'08 ECTICON'08 ICSE'05 Archives