Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!mnetor!uunet!husc6!yale!cmcl2!rutgers!noao!arizona!naucse!sbw
From: sbw@naucse.UUCP (Steve Wampler)
Newsgroups: comp.sys.amiga,comp.lang.misc,comp.sys.mac,comp.sys.atari.st,comp.sys.ibm.pc,comp.sys.apollo,comp.sys.m68k
Subject: Re: SNOBOL for Amy
Message-ID: <509@naucse.UUCP>
Date: Sun, 29-Nov-87 17:32:48 EST
Article-I.D.: naucse.509
Posted: Sun Nov 29 17:32:48 1987
Date-Received: Wed, 2-Dec-87 21:23:29 EST
References: <18476@amdahl.amdahl.com> <2034@ulowell.cs.ulowell.edu> <18763@amdahl.amdahl.com>
Organization: Northern Arizona University, Flagstaff, Arizona
Lines: 15
Keywords: SNOBOL languages Catspaw
Summary: ARB() in Icon
Xref: mnetor comp.sys.amiga:11701 comp.lang.misc:918 comp.sys.mac:10411 comp.sys.atari.st:6533 comp.sys.ibm.pc:10608 comp.sys.apollo:568 comp.sys.m68k:671


Just as a comment, the Icon code for SNOBOL4's ARB pattern can be written
more cleanly as:

	procedure ARB()
           suspend move(0 to (*&subject - &pos))
        end

The earlier example was given in the Icon book as a way to use the
low-level string-scanning facillities to develop more complex ones.

In fact, if you're willing to burn a little extra cpu time at the
end, the suspend given above can be written:

	   suspend move(0 to *&subject)