哪种JVM语言没有类型擦除?

时间:2016-05-27 22:22:51

标签: java scala clojure jvm

我正在寻找一种基于JVM的语言,它始终记得"运行时的类型,除非:

  1. 编译器已经发现擦除不会中断执行或与工作流程无关
  2. 用户手动声明要删除的类型。
  3. 到目前为止,我只尝试过scala,它只会在源代码中声明禁用类型擦除,这不是我想要的,因为它需要很多样板代码来实现,而且当前的实现仍然存在很多问题(例如在Scala中,typetags是严格不变的,禁止它在协变或逆变情况下使用。)

    这种语言存在吗?

1 个答案:

答案 0 :(得分:2)

锡兰有fully reified generics。我自己没有尝试过,也不知道它在实践中的效果如何。