Path: utzoo!utgpu!jarvis.csri.toronto.edu!rutgers!elbereth.rutgers.edu!hardees.rutgers.edu!patterso
From: patterso@hardees.rutgers.edu (Ross Patterson)
Newsgroups: comp.lang.rexx
Subject: Re: AREXX vs REXX
Message-ID: 
Date: 16 Aug 89 16:13:44 GMT
References: <7841@ardent.UUCP>
Distribution: comp.lang.rexx
Organization: Rutgers Univ., CCIS
Lines: 42

Rob Peck  writes:
>... tutorial document on REXX, (my thanks to Lionel Hummel of PDC fame
>for telling me about it), the Colinshaw

That's Cowlishaw, not Colinshaw. Mike Cowlishaw designed the REXX language
while working for IBM both in England and at the Watson Labs in Yorktown
Heights, New York. In addition to designing the language, he also wrote the
IBM 370 implementation (in assembler), which is the basis of the CMS and TSO
REXX products. 

>                                        book (which at 42.95 was more
>than I paid for AREXX in the first place) and Bill Hawes AREXX reference
>manual.   What folks will be interested in is that yes, all of the basics
>of REXX are in AREXX.  However there are some extensions that are certainly
>Amiga specific.  The one that comes to mind most vividly is the ability
>of AREXX to open/read/write files line by line or character by character.

This isn't an  Amiga-specific extension.   The  LineIn(), LineOut(), CharIn(),
and CharOut() functions were defined by Cowlishaw, but never incorporated into
the IBM 370 versions.  There is an appendix in Cowlishaw's book that describes
the IBM 3270 implementations, and explicitly  states the  differences from the
language as defined in the book.  I don't have my copy here, but  as I recall,
they are:

	1) No LineIn(), LineOut(), CharIn(), CharOut(), Lines() and Chars()
	   functions. Other facilities, native to CMS and imported into TSO,
	   are used for file I/O ("EXECIO" to those who care).

	2) The IBM 370 versions use Parse External instead of Parse LineIn,
	   and have an Externals() function that returns the number of lines 
	   in the external data queue.

>                                                     For example,
>I've created a file HELP.REXX that prints the comment lines from any
>AREXX script up to a point where the comments are interrupted by either
>a blank line or a line with no comment on it.  The file works, but has
>a slight problem with nested comments (which are allowed by AREXX).

Nested comments are allowed in standard REXX as well.

Ross Patterson
Rutgers University