From CaesarJ Homepage

Caesar: ReleaseNotes050

< Back

Release Notes v0.5.0

What's new?

CaesarJ Compiler

Compiler checks

In this release we focused on various kind of correctness checks, built in a lot of new error messages. In previous versions the compiler was very tollerant and allowed various illegal situations, which then resulted in unexpected behaviour and hidden bugs.

Command line interface

You can use CaesarJ compiler from command line as well.
 
usage: cjc [option]* [--help] <source-files>

  <source-files> - source file paths relative to current dir or absolute
                   use prefix @ to pass list files
Options:
  --classpath, -C <String>: Changes class path to classpath
  --destination, -d <String>: Writes files to destination
  --encoding, -e <String>: Sets the character encoding for the source file(s).
  --extdirs, -t <String>: Define location of installed extensions
  --help, -h:           Displays the help information
  --optimize, -O <int>:  Optimizes X times [1]
  --verbose, -v:        Prints out information during compilation [false]
  --version, -V:        Prints out the version information
  --warning, -w <int>:   Maximal level of warnings to be displayed [1] 

Remoting support

Java RMI based remoting support is available for Caesar classes. See Caesar Tutorial Lab2H or and RemotePricing example

Outer object access
 
public cclass A {
   public void n() { }
    
   public cclass B {
      public void o() {
         A.this.n();
         n();
         C c = new C();
      }
   }
   
   public cclass D {
   }   
}

The enclosing object can be now accessed in the same way as in Java: by prefixing the outer class before this, for ex. A.this. Outer access is also determined implicitly for method calls as well as for virtual class instantiation. $outer variable is not anymore available.

Wrappee access
 
public cclass A {
   public void n() {
   }
}

public cclass B {
   public cclass C wraps A {
      public void m() {
         wrappee.n();         
      }
   }   
}

Wrapee now can be accessed by special keyword wrappee, but not through $wrappee variable as before;

Bug Fixes

Please consider the bugtracking tool [http://www.st.informatik.tu-darmstadt.de:8080/mantis/] for the list of open/resolved bugs.

Known Limitations

Retrieved from http://caesarj.org/index.php/Caesar/ReleaseNotes050
Page last modified on November 24, 2004, at 12:27 PM