Is Haskell’s type system formally equivalent to Java’s? [closed]
Closed 9 years ago.
Are there programming languages that allow you to do set arithmetic on types?
Out of curiosity, are there languages that allow you to do set arithmetic on types to create new types? Something like:
Why do generics in Scala have erased types, and are not reifiable?
Why do generics in Scala have erased types, and are not reifiable?
Generics and Type-erasure
Generics in Java are implemented using type erasure. The JLS says that the inspiration was backward compatibility. Where as on the other hand C# generics are reifiable.
Type inference in Java 8
Is the introduction of the new lambda notation (see e.g. this article) in Java 8 going to require some kind of type inference?
Why doesn’t Haskell have type-level lambda abstractions?
Are there some theoretical reasons for that (like that the type checking or type inference would become undecidable), or practical reasons (too difficult to implement properly)?
What does “polyadic” mean in the context of functional programming and type systems?
And how does it (or does not) correspond to “polymorphic”? Occasionally I see this notion like in: Implement and represent polyadic operations. I checked Wiktionary but it only gives a general meaning, not specific to functional programming.
Motivation and pitfalls (?) of the auto keyword in C++11
I was recently wondering why the keyword auto
was chosen in C++11 to mark a variable whose type must be inferred by the compiler, like in
Type systems: nominal vs. structural, explicit vs. implicit
I’m a bit confused about the difference between nominal and structural type systems. Can someone please explain how they differ?
Why does Java not do type inference?
I have always wondered why Java does not do type inference given that the language is what it is, and its VM is very mature. Google’s Go is an example of a language with excellent type inference and it reduces the amount of typing one has to do. Is there any special reason behind this feature not being a part of Java?