On 01/06/2021 08:03, Alex Peshkoff via Firebird-devel wrote:
> On 6/1/21 12:51 PM, Dimitry Sibiryakov wrote:
>> 31.05.2021 21:21, Adriano dos Santos Fernandes wrote:
>>>> [ <value list> | ( <value list> ) ]
>>>> [ RETURNING_VALUES <variable list> |
>>>> RETURNING_VALUES ( <variable list> ) |
>>>> RETURNING <value list> [ INTO <variable list> ] ]
>>>>
>>> This does not support ignore all output in DSQL.
>>
>> There can be syntax "RETURNING NULL" for that.
>>
>
> A wide choice:
> - if we accept also RETURNING '(' <value list> ')' [ INTO '(' <variable
> list> ')' ] ] form RETURNING '(' ')' may be used
> - just RETURNING - blank list of values
> - something like NORETURN
>
> But telling true all of them are looking not ideal - ie. not enough
> beautiful...
>
RETURNING does not use parenthesis.
RETURNING NULL is ambiguous.
RETURNING () is ugly and PSQL has nothing to do with LISP.
NORETURN seems nonsense for me - the act of ignore return values should
be the more compact possible syntax - not have appendices - otherwise
suggestion of creating functions returning dummy values will be used(by
us and by users) instead of creating procedures.
Even if we consider that a procedure without output parameters may be
called without NORETURN in DSQL, things must be extensible - if
procedure is changed, already wrote commands should not change their
behaviors completely.
Adriano
Firebird-Devel mailing list, web interface at
https://lists.sourceforge.net/lists/listinfo/firebird-devel