<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><div>On Jan 22, 2009, at 1:14 AM, Rémi Forax wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">In that case, you don't need '#',<span class="Apple-converted-space">  </span>Dynamic."setcar!"(aCons, aValue)</font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">is not ambiguous. It will work with all qualified access to field and<span class="Apple-converted-space"> </span></font></p> <p style="margin: 0.0px 0.0px 0.0px 0.0px"><font face="Helvetica" size="3" style="font: 12.0px Helvetica">method.</font></p> </blockquote></div><br><div>That's what we did in Groovy; it works well there.  Java needs to be a little more formal, I think, and make a clear distinction between string literals and identifiers.</div><div><br></div><div>Restricting XIDs to qualified names is, I think, an unnatural restriction:  It does not follow use cases exactly enough.  In particular, it does not cover the use case I mentioned earlier, of defining exotic names (class/method/field) in Java, for access in other modules, where the spellings are formed by rules other than those governing (non-exotic) Java identifiers.</div><div><br></div><div>-- John</div></body></html>