-- an Embedded JavaTM Compiler


Anonymous SVN (Subversion)

The JANINO code repository is accessible through anonymous SVN. The location URL is http://svn.codehaus.org/janino.


If you want to contribute (i.e. commit files to the JANINO code repository), turn to me.


The following guidelines must be obeyed by all contributors. (Why? Because I'm the despot, that's why.)


Stick to the existing formatting style:

  • Always use four blanks to indent. NEVER use TABs.
  • Fold long lines like this:
         return (
             + '$'
             + ++this.localClassCount
             + '$'
             + localTypeName
  • Long lines of code are not a shame if they are properly folded and thus perfectly readable.
  • If a piece of code is used only once, don't put it in a method.
  • If a piece of code is used more than once, put it in a method.
  • Prefer simple techniques over elegant, but complicated ones. E.g. don't define complex type hierarchies if a simple alternative exists.
  • Don't comment the obvious.
  • Comment everything that is not obvious. E.g., comment briefly what the following ten complex lines of code do. Write useful JAVADOC for every public class and member.
  • Don't make changes unless there is a good reason. E.g. don't reformat portions of code. Keep in mind that someone someday has to merge this code.
Version Control
  • Be careful when committing. Know SVN; know what you're doing. Commit only code that compiles and works.
  • Never commit into the main branch; this is the despot's domain!
  • Discuss with the despot before creating branches.
  • Write unit tests for everything you code. "tests/src/EvaluatorTests.java" is a good starting point.
  • Use the existing unit tests to verify that you didn't break anything - run "AllTests".