Language mavens: Is there a programming with "if then else ENDIF" syntax?

Barry W Brown brownbar at
Mon Nov 16 23:14:33 CET 2009

On Nov 16, 10:54 am, Steve Ferg <steve.ferg.bitbuc... at>
> This is a question for the language mavens that I know hang out here.
> It is not Python related, except that recent comparisons of Python to
> Google's new Go language brought it to mind.
> NOTE that this is *not* a suggestion to change Python.  I like Python
> just the way it is.  I'm just curious about language design.
> For a long time I've wondered why languages still use blocks
> (delimited by do/end, begin/end, { } , etc.) in ifThenElse statements.
> I've often thought that a language with this kind of block-free syntax
> would be nice and intuitive:
>     if <condition> then
>         do stuff
>     elif <condition> then
>         do stuff
>     else
>         do stuff
>     endif
> Note that you do not need block delimiters.
> Obviously, you could make a more Pythonesque syntax by using a colon
> rather then "then" for the condition terminator.  You could make it
> more PL/I-like by using "do", etc.
> You can write shell scripts using if ... fi, but other than that I
> don't recall a language with this kind of syntax.
> Does anybody know a language with this kind of syntax for
> ifThenElseEndif?
> Is there any particular reason why this might be a *bad* language-
> design idea?

Fortran95.  You can even label the IF...END IF structure -- handy for
immense blocks.

This is not a criticism of Python (or of Fortran).

More information about the Python-list mailing list