<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,</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, although I think an error message like "name 'abc' is not defined" (as Python will give) 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, certainly not for UDFs and (to assure backward compatibility) for functions added at a later stage. I certainly hope that parsers won'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,</font> </p>
<p style="margin-bottom: 0; margin-top: 0">
<font size="3" face="Lucida Grande">Ger</font><br><br>>>> Walter Landry <wlandry@caltech.edu> 5/9/2016 3:33 PM >>><br>Making them reserved improves error detection.  If someone writes<br><br>  10*abs*C<br><br>rather than<br><br>  10*abs(C)<br><br>then I can give a descriptive error at parse time<br><br>  On line XXX, column YYY, expected '(', found '*'<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,<br>Walter Landry<br><br>Marco Molinaro <molinaro@oats.inaf.it> wrote:<br>> Dear Ger,<br>> I forward your enquiry to the DAL mailing list, being this of interest<br>> to the full community.<br>><br>> I have, personally, not a strong opinion on this.<br>><br>> The reserved ABS keyword, together with other ones referring to<br>> functions in ADQL, comes from the initial ADQL specification, now<br>> under revision.<br>> So the answer can be as simple as the second paragraph in $2.1.2 of<br>> the spec (refer to either 2.0 or 2.1 version): special meaning and<br>> escaping solution in place.<br>><br>> I let the other ADQL experts comment deeper on the topic.<br>><br>> Cheers,<br>>     Marco<br>><br>> ---------- Forwarded message ----------<br>> Subject: Re: ADQL-2.1 Working Draft available on the repo<br>><br>><br>> Hi Marco,<br>><br>><br>> I'm a bit surprised to see that function names like ABS are reserved<br>> ADQL keywords. A parser does not need it to distinguish between<br>> function names and identifiers. So why is that?<br>><br>><br>> Cheers,<br>><br>> Ger van Diepen<br>><br>><br>><br>>>>> Marco Molinaro <molinaro@oats.inaf.it> 5/3/2016 11:32 AM >>><br>><br>><br>> Dear all,<br>> is now available in the IVOA Document Repository<br>> the Working Draft for the ADQL-2.1 specification:<br>><br>> <a href="http://www.ivoa.net/documents/ADQL/20160502/">http://www.ivoa.net/documents/ADQL/20160502/</a><br>><br>> (PDF and HTML format there, plus volute source)<br>> The WD will be presented with current updates at<br>> the oncoming Interop in Cape Town (DAL 1, next Tuesday).<br>> Comments and discussions are welcome there as well<br>> as on the DAL mailing list.<br>><br>> Cheers<br>>      François & Marco (your DAL chair and vice) and Dave (the editor)<br>
</p>
</body>
</html>