On Mon, 30 Sep 2013 16:51:29 -0400, John Gilmore wrote:

>Many C dialects do support long jumps as a language extension.
>
As a language extension, or via functions?  (Some purists make a
distinction.  But it can't be done with functions without depending
on out-of-band knowledge of the stack structure.)

>They began in PL/I where they were/are called out-of-block GOTOs.
>
"began" only if you consider PL/I to antedate ALGOL 60, which I believe
is contrary to history.  (And ALGOL 60 allows such label objects to be
passed as actual parameters; I don't know about PL/I.)

>PL/I's used of contextually recognized instead of reserved words is a
>high virtue.  It is often caricatured as permitting constructs like
>
>declare file file record sequential buffered ;
>
And the worst compromise is Rexx, wherein such words are reserved
with the bonus of added contextual sensitivity:

    ELSE = 'id'  /* OK */
    ''ELSE    /* OK */
    ELSE    /* IRX0008I Error ...: Unexpected THEN or ELSE  */

-- gil

----------------------------------------------------------------------
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