Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!uunet!husc6!rutgers!sri-spam!ames!amdahl!kim From: kim@amdahl.amdahl.com (Kim DeVaughn) Newsgroups: comp.sys.amiga,comp.lang.misc,comp.sys.mac,comp.sys.atari.st,comp.sys.ibm.pc,comp.sys.apollo,comp.sys.m68k,unix-pc.general Subject: Re: SNOBOL for Amy Message-ID: <18763@amdahl.amdahl.com> Date: Thu, 26-Nov-87 17:34:13 EST Article-I.D.: amdahl.18763 Posted: Thu Nov 26 17:34:13 1987 Date-Received: Sun, 29-Nov-87 17:24:31 EST References: <18476@amdahl.amdahl.com> <2034@ulowell.cs.ulowell.edu> Organization: Amdahl Corporation, Sunnyvale, CA 94086 Lines: 146 Keywords: SNOBOL languages Catspaw Summary: really SPITBOL, other machines, Icon, pattern matching, text processing Xref: mnetor comp.sys.amiga:11617 comp.lang.misc:912 comp.sys.mac:10340 comp.sys.atari.st:6505 comp.sys.ibm.pc:10554 comp.sys.apollo:561 comp.sys.m68k:666 In article <2034@ulowell.cs.ulowell.edu>, page@ulowell.cs.ulowell.edu (Bob Page) writes: > kim@amdahl.amdahl.com (Kim DeVaughn) wrote: > >[Catspaw, Inc porting their MS-DOS SNOBOL to the Amiga] > >I thought I'd let all of you who are interested in text and string > >processing know that such an animal is on the way. > > How does it compare with ICON, available on a Fish Disk? I'm not really sure ... haven't tried Icon out yet. All I know about Icon is from a July 1986 article in "Computer Language" magazine, and what I've attached below. My *impression* is that is more well-structured than is SNOBOL4, although the pattern matching capabilities (per se), are a bit more limited. Mike's 2nd comment on this (below) seems to confirm this. Guess I'll have to tryout Icon and see ... rats, this means yet another book to buy :-)! BTW, I had misread the note from Catspaw ... it *is* SPITBOL that they are porting to the Amiga (they already have versions available for 680x0 based UNIX(R) boxes like Apollo's, Sun's, NCR Tower, Convergent, etc.) They also have a port of SPITBOL in progress for the Mac, and are considering a port for the ST (they imply they're looking for a person with the right experience to do such a port, if you're interested). Oh, and they do have a version of Icon available of MS-DOS machines, too. A few people emailed me for their address, so .... Catspaw, Inc. PO Box 1123 Salida, Colorado 81201 303-539-3884 (voice) [Area code 303 becomes 719 on 3/5/88] 303-539-4830 (BBS) I've no connection with them, except as a satisfied customer of their SNOBOL4 for my MS-DOS box. They deliver a good product, at a reasonable price, provide good support, reaasonable updates, and of course DO NOT copy-protect their software. /kim vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv From: uunet!violet.berkeley.edu!mwm%mica.Berkeley.EDU Date: Fri, 20 Nov 87 01:22:18 PST Subject: Re: SNOBOL for Amy Organization: Missionaria Phonibalonica Unless you're really hooked on SNOBOL as SNOBOL, you might want to look at Icon (it's on one of the Fish disks). Icon is what Griswold did after he got tired of SNOBOL. It's got more powerful string parsing/pattern matching capabilities than SNOBOL. They're also better integrated into the language.Subject: Re: SNOBOL for Amy News-Path: arizona!noao!hao!ames!amdahl!kim In reference to your recent posting that Catspaw is working on a port for SNOBOL for the Amiga, you may be interested to know that the more recent successor to SNOBOL, the Icon programming language which was developed at the University of Arizona by Ralph Griswold, one of the original authors of SNOBOL, is currently available in versions for MSDOS machines, the Atari, and the Amiga as well as for UNIX. These are all available from the Icon Project at the Computer Science Dept. at the University of Arizona in Tucson in both binary and source code form. They are all public domain and may be obtained for a nominal fee. ============================================================================ Subject: Re: SNOBOL for Amy Ultrix: Just say No! Date: Sun, 22 Nov 87 23:57:51 PST From: Mike (My watch has windows) Meyer If what you want to do in SNOBOL is primarily string and pattern matching, with little or no processing, you'd be better off with SNOBOL. Mostly because the pattern matching in SNOBOL is more compact than it is in Icon. The reason for that extra compactness is that the SNOBOL pattern matching is a seperate sub-language embedded in SNOBOL. In Icon, there are some primitives for scanning part of a string, and operators in the language for combining these into full-fledged patterns. This results in 1) pattern-matching facilities that work on things other than strings - like game trees, or directed graphs, and 2) slightly more powerfull pattern matching, as you don't have to obey the restrictions on patterns in SNOBOL. Those combining operations are "generators" and operators for dealing with them. A generator is an expression that returns a value, and can be later resumed to generate a new value, etc. Examples: ARB isn't a builtin, but you can write it as a procedure: procedure arb() suspend &subject[.&pos : &pos <- &pos to *&subject + 1] end I've forgotten much of my SNOBOL, but you can match the regexp .*load.*r6.* with arb() || ="load" || arb() || ="r6" || is string catenation, except that if the right-hand expression fails, you resume the left-hand expression and then try the right-hand one again.. It's related to |, which just executes the two expresions. For instance, if you can print all the integers by doing something like: n +:= 1 | print n | fail The language is worth a look, but you'll need to buy the book that goes with it: The Icon Programming Language, by Griswold and Griswold.