On 11/30/2016 03:47 AM, Fabien COELHO wrote:
>
> Hello Andrew,
>
>>> I cannot remember a language with elseif* variants, and I find them
>>> quite ugly, so from an aethetical point of view I would prefer to
>>> avoid that... On the other hand having an "else if" capability makes
>>> sense (eg do something slightly different for various versions of
>>> pg), so that would suggest to stick to a simpler "if" without
>>> variants, if possible.
>>
>> FTR I *strongly* disagree with this. (And if you can't remember a
>> language that comes with them then you need to get out more. The
>> Bourne shell, where it's spelled "elif", and Ada are two obvious
>> examples.)
>
> There may be a misunderstanding somewhere.
>
> I'm rather in favor of having "elif/elsif/elseif/..." constructs,
> especially if they can be useful in realistic examples, which is not
> clear yet for psql scripts.
>
> I'm arguing against "if/elif" *variants* in the sense of various
> conditional semantics: e.g. in cpp you have several "if"s (ifdef
> ifndef if), but you do not have all the corresponding "elif"s (elifdef
> elifndef...), there is only one "elif". In cpp "ifdef"/"ifndef" were
> obsoleted by "if" with minimal expression support (#if
> !defined(HAS_SOMETHING) ...) and only this "if" has its "elif".
>
Oh, I see. Sorry for the misunderstanding.
I agree about generally sticking with one pattern, but I wouldn't want
to exclude shorthand pieces like
\quit_if cond
which could be more convenient than
\if cond \quit \endif
c.f. perl's "foo if bar;" as shorthand for "if (bar) { foo; }"
Still, that might be a refinement to add later on.
cheers
andrew