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