我听说过很多不同的JVM语言,它们仍处于虚拟产品模式,并提出以某种方式实现具体化。我有这样一个烦人的半记忆(或者完全是想象的,不知道哪个)想法,就在某个地方我读到过Scala如何利用JVM的类型擦除来完成一些它无法使用具体化完成的事情。这对我来说并没有太多意义,因为Scala不仅在JVM上实现,在CLR上也有实现,所以如果具体化引起了某种限制,它将会在CLR实现中显示出来(除非CLR上的Scala只是忽略了具体化)。
那么,对于Scala来说,类型擦除有好的一面,还是具体化是完全正确的事情?
我听说过很多不同的JVM语言,它们仍处于虚拟产品模式,并提出以某种方式实现具体化。我有这样一个烦人的半记忆(或者完全是想象的,不知道哪个)想法,就在某个地方我读到过Scala如何利用JVM的类型擦除来完成一些它无法使用具体化完成的事情。这对我来说并没有太多意义,因为Scala不仅在JVM上实现,在CLR上也有实现,所以如果具体化引起了某种限制,它将会在CLR实现中显示出来(除非CLR上的Scala只是忽略了具体化)。
那么,对于Scala来说,类型擦除有好的一面,还是具体化是完全正确的事情?