<html>
  <head>

  </head>
  <body style="font-style: normal; margin-left: 4px; margin-right: 4px; font-variant: normal; margin-top: 4px; font-weight: normal; line-height: normal; font-family: Lucida Grande; font-size: 12pt; margin-bottom: 1px">
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="3" face="Lucida Grande">Hi Walter&#44;</font>    </p>
<br>      
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="3" face="Lucida Grande">Thanks for your explanation.</font>    </p>
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="3" face="Lucida Grande">I understand&#44; although I think an error message like &quot;name &#39;abc&#39; is not defined&quot; &#40;as Python will give&#41; will be just as clear.</font>    </p>
<br>      
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="3" face="Lucida Grande">But note it is not possible to make every function a reserved ADQL keyword&#44; certainly not for UDFs and &#40;to assure backward compatibility&#41; for functions added at a later stage. I certainly hope that parsers won&#39;t rely on function names being reserved keywords.</font>    </p>
<br>      
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="3" face="Lucida Grande">Cheers&#44;</font>    </p>
    <p style="margin-bottom: 0; margin-top: 0">
      <font size="3" face="Lucida Grande">Ger</font><br><br>&gt;&gt;&gt; Walter Landry &lt;wlandry@caltech.edu&gt; 5/9/2016 3:33 PM &gt;&gt;&gt;<br>Making them reserved improves error detection.&#160;&#32;If someone writes<br><br>&#160;&#32;10&#42;abs&#42;C<br><br>rather than<br><br>&#160;&#32;10&#42;abs&#40;C&#41;<br><br>then I can give a descriptive error at parse time<br><br>&#160;&#32;On line XXX&#44; column YYY&#44; expected &#39;&#40;&#39;&#44; found &#39;&#42;&#39;<br><br>rather than running the query through the database backend and hoping<br>that the database generates a decent error message.<br><br>Cheers&#44;<br>Walter Landry<br><br>Marco Molinaro &lt;molinaro@oats.inaf.it&gt; wrote:<br>&gt; Dear Ger&#44;<br>&gt; I forward your enquiry to the DAL mailing list&#44; being this of interest<br>&gt; to the full community.<br>&gt;<br>&gt; I have&#44; personally&#44; not a strong opinion on this.<br>&gt;<br>&gt; The reserved ABS keyword&#44; together with other ones referring to<br>&gt; functions in ADQL&#44; comes from the initial ADQL specification&#44; now<br>&gt; under revision.<br>&gt; So the answer can be as simple as the second paragraph in &#36;2.1.2 of<br>&gt; the spec &#40;refer to either 2.0 or 2.1 version&#41;: special meaning and<br>&gt; escaping solution in place.<br>&gt;<br>&gt; I let the other ADQL experts comment deeper on the topic.<br>&gt;<br>&gt; Cheers&#44;<br>&gt;&#160;&#160;&#160;&#160;&#32;Marco<br>&gt;<br>&gt; ---------- Forwarded message ----------<br>&gt; Subject: Re: ADQL-2.1 Working Draft available on the repo<br>&gt;<br>&gt;<br>&gt; Hi Marco&#44;<br>&gt;<br>&gt;<br>&gt; I&#39;m a bit surprised to see that function names like ABS are reserved<br>&gt; ADQL keywords. A parser does not need it to distinguish between<br>&gt; function names and identifiers. So why is that&#63;<br>&gt;<br>&gt;<br>&gt; Cheers&#44;<br>&gt;<br>&gt; Ger van Diepen<br>&gt;<br>&gt;<br>&gt;<br>&gt;&gt;&gt;&gt; Marco Molinaro &lt;molinaro@oats.inaf.it&gt; 5/3/2016 11:32 AM &gt;&gt;&gt;<br>&gt;<br>&gt;<br>&gt; Dear all&#44;<br>&gt; is now available in the IVOA Document Repository<br>&gt; the Working Draft for the ADQL-2.1 specification:<br>&gt;<br>&gt; <a href="http://www.ivoa.net/documents/ADQL/20160502/">http://www.ivoa.net/documents/ADQL/20160502/</a><br>&gt;<br>&gt; &#40;PDF and HTML format there&#44; plus volute source&#41;<br>&gt; The WD will be presented with current updates at<br>&gt; the oncoming Interop in Cape Town &#40;DAL 1&#44; next Tuesday&#41;.<br>&gt; Comments and discussions are welcome there as well<br>&gt; as on the DAL mailing list.<br>&gt;<br>&gt; Cheers<br>&gt;&#160;&#160;&#160;&#160;&#160;&#32;Fran&#231;ois &amp; Marco &#40;your DAL chair and vice&#41; and Dave &#40;the editor&#41;<br>
    </p>
  </body>
</html>