TIP: Click on subject to list as thread! ANSI
echo: os2prog
to: Jerry Mcbride
from: Murray Lesser
date: 1994-11-04 19:55:00
subject: Rexx

Excerpted from message dated 11-02-94, Jerry Mcbride to Murray Lesser:

  >
JM> ML>  However, Mike Cowlishaw explained very carefully, in his book, 
  > ML> why REXX cannot have a GOTO, so we just have to live with it.  
  >
JM>In the rexx information folder are examples and text describing HOW
  >to use it in this funtion. Just open rexx information, search for
  >"signal". It's all there...
  >
JM> ML> But the lack of a real GOTO does lead to what would otherwise 
  > ML> be unnecessary coding complications, at times.
  >
JM>I think you either read what Mike Cowlishaw wrote or he doesn't read
  >IBM's literature very well.
  >
JM>And while I'm here, what is the name of this book? 
  >

Jerry--

    Mike Cowlishaw is the "inventor" of REXX.  His book "The REXX
Language: A Practical Approach to Programming, second edition" (ISBN
0-13-780651-5) is the _definition_ of "standard" (SAA version 4) REXX.
Any REXX publication that contains information contrary to what is in
Mike's book is wrong.  The IBM on-line manuals do not disagree with the
book, although there are additional non-SAA constructs in OS/2 REXX.
SIGNAL is not one of them.

    To quote from Mike's book (p 10):  "The GOTO instruction is a
necessary casualty of dynamic scoping.  In a truly dynamically scoped
language [REXX is], a GOTO cannot cannot be used as an error exit from a
loop.  If it were, the loop would never become inactive.  REXX, instead
provides an "abnormal transfer of control" instruction, SIGNAL, that
terminates all active control structures when it is executed.  Note that
it is not just a synonym for GOTO since it cannot be used to transfer
control within a loop..."

    Hope this helps.  If you are really interested in using REXX, and
can find a copy, buy and read Mike's book very carefully.  Also, it
might help to buy IBM's OS/2 REXX manual "Procedure Language 2/ REXX
Reference."  It is IBM part # 10G6268, $15(US).  The on-line stuff that
comes with OS/2 consists of excerpts from this manual and its companion
"Procedure Language 2/ User's Guide" (Part # 10G6269, $10).

               --Murray
___
 * MR/2 2.12 #120 * Also sprach Zarathustra: "Have a Good Day"
  
---

* Origin: 2" x 4" bbs - a basic board - (914) 271-9407 (1:2625/108)
SEEN-BY: 12/2442 54/54 620/243 624/50 632/348 640/820 690/660 711/409 410 413
SEEN-BY: 711/430 807 808 809 934 942 949 712/353 623 713/888 800/1
@PATH: 2625/108 1 261/1023 396/1 3615/50 229/2 12/2442 711/409 54/54 711/808
@PATH: 711/809 934

SOURCE: echomail via fidonet.ozzmosis.com

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.