AndrewWalbran did a BSc Honours project in 2008, working on loop code movement in Java based on annotation of pure functions, supervised by LindsayGroves (and sneakily by DavidPearce too).
He has a personal website, personal blog and research blog.
You might want to read his honours report, or perhaps just have a quick look at the poster.
Over the summer of 2008-2009 he worked as a research assistant for AlexPotanin on implementation of ownership and immutability (OGJ? and IGJ?) in javac (OpenJDK) and the standard Java collections libraries (and more).