Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utgpu!water!watmath!clyde!rutgers!husc6!ut-sally!utah-cs!OP.DAVIS@SCIENCE From: OP.DAVIS%SCIENCE@utah-cs.UUCP Newsgroups: comp.sys.amiga Subject: Re: AREXX and ICP Message-ID: <12335693592.20.OP.DAVIS@SCIENCE.UTAH.EDU> Date: Fri, 18-Sep-87 18:28:44 EDT Article-I.D.: SCIENCE.12335693592.20.OP.DAVIS Posted: Fri Sep 18 18:28:44 1987 Date-Received: Sun, 20-Sep-87 02:19:38 EDT Lines: 28 In-Reply-To: <2040@megaron.arizona.edu> REXX is the Restructured EXecutive, developed by Michael Cowlishaw then of IBM U.K It's an interpreted, PL/I-like language first used on IBM's VM/CMS mainframe systems. Your library may have his summary article 'The design of the REXX language', IBM Systems Journal, vol 23. no. 4, 1984, or the books "Modern Programming Using REXX", by Robert P. O'Hara and David Roos Gomberg, or Cowlishaw's "The REXX Language: A Practical Approach to Programming", both published by Prentice-Hall in 1985. Here's an example program from the summary article: /* This routine removes duplicate words from a string, and */ /* illustrates the use of a compound variable (HADWORD) that */ /* is indexed by arbitrary data (words). */ Justone: procedure /* make all variables private */ parse arg wordlist /* get the list of words */ hadword.=0 /* show all possible words as new */ outlist = '' /* initialize the output list */ do while wordlist !='' /* loop so long as we have some data */ /* split WORDLIST into the first word and the remainder */ parse var wordlist word wordlist if hadword.word then iterate /* loop again if already had */ hadword.word = 1 /* remember that we have had this word */ outlist = outlist word /* and add this word to output list */ end return outlist /* finally return the result */ -------