🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.lang.misc
Article #4710

Re: Request for pointers to information about Icon

#4710
From: gudeman
Date: Wed, 08 Apr 1987 06:53
55 lines
2763 bytes
   From: janssen@milano.UUCP
   Date: 3 Apr 87 18:47:15 GMT

   Can anyone provide names and addresses, or article citations,
   that I could contact or read for more information on ICON?

Icon is a general-purpose programming language descended from SNOBOL4
and designed for the processing of strings and lists.  It's an
interesting language, if you are familiar with SNOBOL4, think of the
pattern matching facility extended to the whole language.  If you are
a Prolog programmer, think of the Prolog evaluation mechanism (success
or failure with backtracking) with general assignment instead of
resolution.  In either case, you also have to add that Icon
expressions return values while SNOBOL4 patterns and Prolog clauses do
not.

If you don't follow the above, how about this: Icon is a language
where all expressions produce zero or more values.  There aren't any
statements like in C or Pascal, only expressions.  There _is_ a while-
expression, an if-expression, etc.  When any expression fails to
produce a result, it attempts to _resume_ a preceding expression for
another value.  For example find(s1,s2) produces the first position
in the string s2 that matches the string s1.  But since expressions
can produce 0 or more results, if s2 does not occure in s1, the
expression fails.  _And_, if s1 occurs more than once in s2, a
seperate result is produced for each position.

This obviously will not make much sense without a lot more
explanation and examples.  I recommend the book

	Ralph E. Griswold, Madge T. Griswold. _The Icon Programming
	Language_. Prentice Hall, 1983.

Icon is implemented for a large number of systems including IBM 370,
MSDOS, BSD Unix, VMS and about 20 more.  For information on how to get
an Icon interpreter (public domain, free except for distribution
costs, written in C) contact

	icon-project@arizona.edu
or
	ihnp4!arizona!icon-project
or
	Icon Project
	Department of Computer Science
	Gould-Simpson Science Building
	The University of Arizona
	Tucson, AZ 85721

					David Gudeman

					Department of Computer Science
gudeman@arizona.edu			Gould-Simpson Science Building
ihnp4!arizona!gudeman			The University of Arizona
602-621-2858				Tucson, AZ 85721
Technical Details
Message-ID: <1625@megaron.arizona.edu>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!water!watnot!watmath!clyde!rutgers!husc6!seismo!nbires!hao!noao!arizona!gudeman

Show Full Headers
Complete Article Headers
Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: arc1-ca.pugleaf.net!utzoo!utgpu!water!watnot!watmath!clyde!rutgers!husc6!seismo!nbires!hao!noao!arizona!gudeman
From: gudeman@arizona.UUCP
Newsgroups: comp.lang.misc
Subject: Re: Request for pointers to information about Icon
Message-ID: <1625@megaron.arizona.edu>
Date: Wed, 8-Apr-87 01:53:23 EST
Article-I.D.: megaron.1625
Posted: Wed Apr  8 01:53:23 1987
Date-Received: Sat, 11-Apr-87 08:46:25 EST
Organization: U of Arizona CS Dept, Tucson
Lines: 55