Reference implementation

Reinier Zwitserloot reinier at
Sat Oct 31 20:09:30 PDT 2009

How does not encoding what the source statement does mess with this?

Any given source file will compile the exact same way given a compiler that
is both java certified and compatible with the version you're using. That's
true now. That'll be true with a source statement as well.

So, how is the status quo any different? If I take a certified,
sun-stamp-of-approval-carrying jikes from the stone age and try to compile
my shiny new for eaches in it, it'll fail to compile my code.

--Reinier Zwitserloot

On Sun, Nov 1, 2009 at 12:20 AM, Neal Gafter <neal at> wrote:

> On Sat, Oct 31, 2009 at 12:43 PM, Reinier Zwitserloot <
> reinier at> wrote:
>> Neal: as I mentioned, the source statement may not have any effect, other
>> than generating a warning or 'not compatible with this version' error. For
>> the smarter compilers that know how to deal with it, it's the compiler
>> that
>> decides to use a different version of the JLS when compiling the source
>> file
>> - not a dictate written in the JLS.
> The language should not be based on "whatever the compiler understands",
> but rather vice versa: the compiler should be made to understand what is
> described in the language specification.  Some languages - for example,
> Groovy and Ruby - take the opposite approach, and that is fine for them.
> But Java has always taken a strong position that there should be one
> language that does not vary from implementation to implementation.  Sun
> licenses the Java trademark in a way that enforces that unity, and I would
> not advocate changing that.

More information about the coin-dev mailing list