Help

In connection with this discussion it's worth making explicit what I guess everybody knows, but that sometimes seems to get a bit mixed up in conversation: that Java's support for raw types (necessary for backward compatibility with pre-generics code) doesn't really have anything much to do with type argument erasure. In a hypothetical language:

  • you could have raw types without type argument erasure, or
  • you could have type argument erasure without raw types.

Raw types have their own problems, of course (they're a designed-in hole in the type system). But a defense of the existence of raw types does not amount to a defense of partially reified types.

3 comments:
 
04. Aug 2011, 18:51 CET | Link
Mark

Offtopic: have you considered a subset of Ceylon that would be implementable as compiled-only language?

ReplyQuote
 
04. Aug 2011, 19:28 CET | Link
Mark

What I mean is compile to C, or a similiar non-JIT system.

 
05. Aug 2011, 01:11 CET | Link

We have not put any thought into that particular possibility, but since the typechecker is an independently reusable module, it's very possible to implement alternative backends, for example .js or mono or whatever. Probably even something like llvm.

Post Comment