Hi! I’ve created this page to showcase the features of Mint (since there are so many) and their corresponding versions in other similar languages.
Hi! I’ve created this page to showcase the features of Mint (since there are so many) and their corresponding versions in other similar languages.
I get your point, but that’s not a great example. Kotlin is a statically typed language, and this compiles (and runs!) just fine:
val test: List<String> = listOf(1) as List<String> println(test) // prints "[1]"
Even
val test: String = 1 as String
will compile, but at least gives you an exception at runtime, which the equivalent typescript wouldn’t.That’s crazy, I thought that would be an invalid cast or something.
Unfortunately not. You do get a warning that it’s an unchecked cast at least.
Granted, the issue here is generic type erasure, which was a tradeoff that was decided on for backwards compatibility when generics were first introduced to Java, so it’s not like an actually desirable feature of the language. But the point is that this wouldn’t be reason for anyone to not call Java and Kotlin not statically typed, their type system is just a bit weaker than others in certain aspects