This document desribes the internals of annotations in the Scala compiler.
It explains how symbol and type annotations are represented at different phases of the compiler, how annotations are saved to bytecode and how compatibility with java annotations is achieved.
Links:
[1] http://www.scala-lang.org/sites/default/files/sids/rytz/Wed, 2010-01-27, 15:10/annots.pdf
[2] http://www.scala-lang.org/sites/default/files/sids/rytz/Wed, 2010-01-27, 15:10/annots.tex