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

Reply via email to