As much as I admire Scala, I do think it's just too complex to contend seriously as a Java replacement. Something like this could be exactly what's needed to keep the JVM platform alive (assuming Oracle's legal stunts don't kill it). This might be the final push to get me to try my hand at an app if I can use this for Android.
If I had to guess they are probably sub-classing the built in collection classes under the covers to add in metadata slots for things like type information. As long as they implement the appropriate collections interface or class I don't see why they wouldn't be compatible with generics classes since none of type details ever makes it into the runtime.
- Non-nullable types by default! http://confluence.jetbrains.net/display/Kotlin/Null-safety
- No checked exceptions: http://confluence.jetbrains.net/display/Kotlin/Exceptions
- Native delegation support: http://confluence.jetbrains.net/display/Kotlin/Classes+and+I...
This looks like a language I could enjoy programming in, overall. The explicit goal of being simpler than scala sits well with me.