It depends on what you want to do. It would make sense that Scala, a language that can naturally encode a type class like structure and jruby, a dynamic language wouldn't mind erasure. For jruby it is self evident why and for scala's case, reified generics make it really hard to do higher kinded stuff.
Haskell is type erased too but it's not commonly noticed due to the nature of the structures commonly used and the strength of the type system. But in an OOP language where inheritance is used significantly, you really do need Reified generics as they make things much easier. I believe Java also made additional compromises to maintain backwards compatibility.
Haskell is type erased too but it's not commonly noticed due to the nature of the structures commonly used and the strength of the type system. But in an OOP language where inheritance is used significantly, you really do need Reified generics as they make things much easier. I believe Java also made additional compromises to maintain backwards compatibility.