Sorry Peter, but that is a nonsensical definition of language semantics. By using your definition, if Microsoft adds a feature to the CLR using custom attributes, the Java language semantics change, because on IKVM you can use these custom attributes in your Java code.
Regards, Jeroen > -----Original Message----- > From: Peter Levart [mailto:peter.lev...@gmail.com] > Sent: Wednesday, March 5, 2014 18:07 > To: Jeroen Frijters; Brian Goetz; core-libs-dev@openjdk.java.net; Doug > Lea > Subject: Re: JEP 193: Enhanced Volatiles > > > On 03/05/2014 05:55 PM, Jeroen Frijters wrote: > > > Brian Goetz wrote: > > > I suspect you were expecting this response: we don't add > language > semantics through annotations. > > Technically, we're not adding language semantics. The JVM is the > one interpreting the annotations. > > > And the JVM is the one implementing the language semantics (together > with javac which feeds the JVM with bytecodes). Language semantcis are > implemented by the combination of javac and JVM. If you say that this > feature does not require any change to javac, you're just saying that > you put all the burden on the JVM, but you *are* implementing the > language semantics using annotations nevertheless... > > > Regards, Peter > > > > > > I'm not trying to frustrate you; evolving a language with > millions of > users is really, really hard. And one of the things that > makes it hard > is recognizing our intrinsic conflicts of interest between > "what good > will this do me" and "what harm will it do others." > > I understand, that's why I want to avoid adding language support > for this niche/specialist feature. > > Regards, > Jeroen > >