WWW Survey Page of Language "Icon"
LANGUAGE NAME: Icon
CATEGORY: Object-Oriented Language
ORIGIN: SNOBOL4
YEAR: 1978
ORIGINATOR: Ralph E. Griswold and Gregg M. Townsend
at the University of Arizona
HISTORY:
- Icon is a succesor to SNOBOL4:
The first SNOBOL language was developed in 1962. A
succession of improvements
led to SNOBOL4 in 1968.
Few changes have been made to SNOBOL4 since then.
Further language development led to Icon in 1978. Icon
has evolved through a series
of versions, the latest of
which was released in 1993.
BASIC FEATURES:
- very high level general-purpose programming language
with extensive features for
processing strings(text)
and data structures
- built-in data types include numerics, character sets, string,
sets, list, associative
tables, records, and procedures
- aggregate types(sets, lists, tables, and records) can hold
values of any type, and
use pointer semantics
- imperative, procedural language with a syntax that is
resembing C and Pascal,
but its semantics are at a
much higher level than those languages
- strongly, though not statically, typed language
- values, not variables, are typed
- best when used as a prototyping tool for processing text,
and when ease of
programming is needed for experimental
and research applications.
ADVANCED FEATURES:
- support for strings of characters of arbitrary length
- stings and aggregates can be of arbitrary size, and their
size can be change during
execution.
- high-level facilities for analyzing strings
- string scanning allows operations on strings to be formaulated
at a high conceptional
level.
- a powerful expression-evaluation mechanism
- expressions produce sequences of results, goal-directed
evaluation that automatically
searches for a successful
result.
- sophisticated data structures for managing complex relationships
among data
- high-level graphics facilities
- automatic storage management
- memory management is automatic.
INTERESTING ADDITIONAL FEATURES:
- designed to make programming easy but, paradoxically,
Icon is used most often
for short, one-shot
tasks and for very complex applications.
- Although Icon has extensive facilities for processing strings
and structures, it also has
full computational facilities
which are suitable for a wide variety of applications such as
- text analysis
- text editing
- document formatting
- artificial intelligence
- expert systems
- rapid prototyping
- symbolic mathmatics
- text generation
- data laundry.
RELATED WWW SITES:
-
Click here to link to home page of icon-project at the
University of Arizona
-
Click here to use a tutorial for the Icon programming
language
-
Click here to use the official Icon FAQ
SOFTWARE ARCHIVE SITES:
NEWSGROUP:
ORGANIZATIONS ON WWW THAT PROVIDE LANGUAGE SUPPORT
TOOLS:The Icon Project, which is non-commercial organization
supported by the University of Arizona, is the group that
develops, implements, distributes, and supports the Icon.
Jung Lee
<jlee@tuck.cs.fit.edu>
Last modified: Wed Jan 29 13:50:00 EST 1997