Guy Steele was in the office next to mine at Oracle. We had a lot of long chats about language design, and I've tried to keep him up to date on the work we've done with Ecstasy including
* Java-like language
* immutable “objects”/values are the first-class citizens
* method implementations can use local, mutable semantics (including mutable captures)