Kotlin type erasure - why are functions differing only in generic type compilable while those only differing in return type are not?

If the JVM includes the return type in signature, it makes sense. However, why is this not allowed in Java, then? :slight_smile: