John Shipman wrote a user's guide and tutorial that may be useful in learning the language. Persons requiring additional information should consult our local copy of the Icon Programming Language Reference Summaries . There is a substantial amount of supplemental documentation on the language additions in Version 9.1, primarily consisting of graphics facilities. The following Icon lectures notes are periodically used in CS 3323 and related courses. Icon Overview Icon is an amazing language, floating somewhere halfway in between the abstract worlds of Lisp and SmallTalk and the grotesque, low-level details of languages like C and Pascal.
Icon is useful for rapid prototyping tasks in which programmer time is limited.
It also illustrates what languages can do for the programmer when they are designed well. All implementations of Icon thusfar have been based on a common ancestor, namely the version developed at the University of Arizona. Icon's runtime system is a marvelous place, with lots of built-in data types and operations, arbitrary memory sizes, and automatic memory management. The runtime system and its extensive built-in operations are the reason for much of Icon's enduring appeal. In Icon, all expressions either succeed and produce 1 or more results, or they fail to produce any results.