On Thu, Jun 23, 2011 at 10:35 AM, Ricky Clarkson
<[email protected]> wrote:
> Probably erasure, but that wasn't Odersky's fault either.
> He was tasked with building a prototype Java source compiler, with no help
> from the VM team, that could handle generics.  He did so, without using any
> Sun source, as far as I know, and that later became javac 1.3, which
> apparently had generics, but disabled by default.  They were removed in 1.4,
> then readded with a slew of extra problems in 1.5.
> If he had had some help from the VM team, he could have considered a C#-like
> implementation.
> In any case, the final decision was Sun's, and though I disagree with parts
> of it (wildcards, adding 1000s of warnings to already-existing code,
> releasing it before their *own* code was warning-free), it really isn't as
> bad as it can seem if you look mainly at the corner cases.
> On Thu, Jun 23, 2011 at 1:27 PM, Casper Bang <[email protected]> wrote:

Note that today Odersky does *not* favor reified generics.

He made this point explicitly in the recent past when he gave his
"Future-proofing Scala collections: From mutable to persistent to
parallel" talk at Stanford:
    http://www.stanford.edu/class/ee380/Abstracts/110601.html

In the late 1990's, adding generics to Java was a hot topic in the
programming language research community.  Conferences of the era would
often have multiple papers putting forward different proposals.

Erasure is another name for the "homogeneous" translation scheme
described in Odersky and Wadler's POPL '97 paper "Pizza into Java:
Translating theory into practice."

The main reason an erasure-based approach was used for Java generics
was that no reified approach known at the time could meet the
migration compatibility goals for the Java platform.  The constraints
and goals for adding generics to Java are stated in the JSR 14
proposal:
    http://www.jcp.org/en/jsr/detail?id=14

-Joe

-- 
You received this message because you are subscribed to the Google Groups "The 
Java Posse" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/javaposse?hl=en.

Reply via email to