On 30 Sep 2013 13:26:38 -0700, in bit.listserv.ibm-main you wrote:

>On Mon, 30 Sep 2013 15:55:14 -0400, John Gilmore wrote:
>>
>>[Pascal] is much concerned to interdict practices, e.g., GOTOs or
>>unconditional branches, that it deems 'unstructured' or 'anarchic'.
>> 
>Pascal has GOTO.  Dismayingly, statement labels are numeric,
>perhaps a legacy of FORTRAN (and ALGOL 60).  In my opinion, the
>greatest value of GOTO is the longjump; the ability to exit a
>nest of not only compounds, but also blocks and function calls.
>I pine for this facility in Rexx, POSIX shell, and C.

IBM COBOL has EXIT PROGRAM and GOBACK both of which can be used with
nested programs.  The 2002 COBOL standard has EXIT PERFORM CYCLE and
EXIT PERFORM for PERFORM loops, EXIT PARAGRAPH and EXIT SECTION.

Clark Morris
>
>One could synthesize the longjump by a call to a function
>declared nested in an outer function and containing only
>a GOTO.  Alas, nested function declarations are out of style,
>in C, Modula2, ...; possibly because of the induced requirement
>that a reference to a function have two pointers; one to the
>entry point, the other to the stack frame of the statically
>enclosing scope.
>
>ALGOL 60 has its warts:
>
>o Dangling ELSE (An Unexpected Journey and a strong argument
>  for strong closure).
>
>o The requirement that an integer actual parameter contain both
>  a numeric attribute and a label attribute.
>
>o The implied comment after END coding pitfall.
>
>o ... (Name your favorite.)
>
>Pascal has its warts:
>
>o The requirement to predeclare GOTO labels; a consequence
>  of single-pass compilation.
>
>o Byzantine operator precedence, most probably a consequence
>  of letting the 60-bit architecture of the CDC 6600 limit the
>  number of nonterminal symbols in its grammar.
>
>o That the standard type identifiers are not reserved words.  I'm
>  worried by this far less than others.  If the programmer chooses
>  to redeclare "integer" that's his bad programming convention,
>  not to be interdicted by a nanny language.
>
>o ... (Name your favorite.)
>
>-- gil
>
>----------------------------------------------------------------------
>For IBM-MAIN subscribe / signoff / archive access instructions,
>send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to