Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83 SMI; site sun.uucp Path: utzoo!watmath!clyde!burl!ulysses!harpo!decvax!decwrl!sun!gnu From: gnu@sun.uucp (John Gilmore) Newsgroups: net.lang.apl Subject: Re: iteration in the expression sub-language of APL Message-ID: <1089@sun.uucp> Date: Wed, 16-May-84 01:25:38 EDT Article-I.D.: sun.1089 Posted: Wed May 16 01:25:38 1984 Date-Received: Thu, 17-May-84 05:09:33 EDT References: <8059@cornell.UUCP> Organization: Sun Microsystems, Inc. Lines: 15 Several APL systems have extensions like what you propose. Systems from IBM, STSC, and IPSA all include an extension to compression called "replicate"; each left argument element says how many copies of the right argument element should appear in the result. Also, for multiple application of functions, the "power" operator is used. I don't recall exactly how it works for dyadics, but it's easy for monadics. It just applies the function N times where N and the function are the arguments to the operator. There are degenerate cases where N is missing (apply the function until the result stops changing, as in calculus) or where N is -1 (give the inverse function). I'd suggest getting a copy of the IBM APL2 Language Manual to get some idea of what is going on in the modern APL world. You might also check some of the "nested arrays and operators" papers from the last 5 or 6 APL conferences.