A while ago I read about Scala for LLVM and I kept wondering which things in the Scala language/specification/library) only exist to make the JVM happy or improve interop with Java.
Considering that running Scala on the LLVM provides much more freedoms and the plan is port the language (and not the whole Java ecosystem around it) which features won't make sense there?
Guidance: I'm wondering about things like Object#finalize
, the monitor stuff (notify
, wait
), clone
vs. Cloneable
, no 64-bit array indices, collection sizes limited to 32-bit, java.lang.String
, Java reflection, ...
null, null, null, and null
Type erasure. Having every object have a monitor reference (a horrible Java mis-feature).
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With