Tom Lane wrote:

Andreas Pflug <[EMAIL PROTECTED]> writes:


Why not regard anything between "AS" and LANGUAGE as source?



That seems quite impractical, considering that the function body may be in a language that has little in common with SQL even at the lexical level. The SQL parser couldn't even tell what was a comment or quoted string with any reliability.



This would prevent the usage of LANGUAGE as a keyword inside the function definition, but I can't think of any senseful other use anyway.



Would you be unhappy if "language" appearing in what you think is a
comment in the function body caused a failure?


The parser would have to know about comments.

How about "language"
in what you think is a quoted literal string?

If it's quoted, it may contain anything without interfering, no?

Another problem is that the CREATE FUNCTION syntax doesn't insist on any
particular ordering of the attributes; there's nothing saying that
LANGUAGE must be the first thing after the AS clause.

This is so at the moment, while all samples use AS .... LANGUAGE. This could stay free format if quoted as usual, and require it strict if the new format is used. Initially, I didn't want to suggest an additional keyword like ENDFUNC or ENDAS, but now I do. If somebody insists on using such a keyword in the function definition body, he could fall back to the quoted format.

Regards,
Andreas



---------------------------(end of broadcast)---------------------------
TIP 8: explain analyze is your friend

Reply via email to