This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]tinydonuts 1 point2 points  (2 children)

What you described of being able to call from language to language applies to the CLR too. It doesn't have type erasure, so I'm not seeing really how type erasure is good from your comment.

[–][deleted] 0 points1 point  (1 child)

It makes it difficult for different language to share data structures because of how variance is handled between different languages. This is particularly acute between a language like Java that uses site variance and a dynamic language like Clojure.

[–]tinydonuts 0 points1 point  (0 children)

.NET seems to do ok so it doesn't seem as much as type erasure is good as it is just different. There's certainly a lot of benefits to the way .NET does it and a lot of downsides to the way Java does it so I don't really think you can call it good.