Formal Syntax And Semantics Of Java by James Alves-Foss