SPA2005 session: What are Tiger annotations for?

One-line description:Using meta-data in Java 5.0
 
Session format: Tutorial [read about the different session types]
 
Abstract:Java release 5.0 (Tiger) extends the language by allowing user-defined annotations to be added to any declaration. These may be examined by pre-compilation tools, by the loader, or at runtime.

The documentation for annotations emphasises their use in generating code, such as boiler-plate EJB code. However, the ability to add arbitrary data to a declaration, and then interpret that at runtime with user code opens the door to much more radical uses. In effect, we can now extend the Java language with our own declarations, and specify our own semantics by writing code to give them meaning.

This is a very new area of Java. Come and learn what is possible, and share your ideas on how this powerful feature might be used. We are all language designers now!
 
Audience background:Solid Java knowledge. Developers. Architects.
 
Benefits of participating:- learn what the annotation language features are
- see some non-obvious applications of annotations
- share your thoughts on new programming techniques
 
Materials provided:
 
Process:Presentation, followed by brainstorming new techniques.


00:00 presentation
00:55 brainstorming
01:15 depart enlightened
 
Outputs:slides
poster of discovered techniques
 
History:At OT2004 annotations were briefly covered in a general overview of Tiger. I am giving a presentation similar to this one at ACCU in March 2005.
 
Presenters
1. Benedict Heal
Independent
2. 3.