Icon (programming language)
Programming language
Icon is a very high-level programming language based on the concept of "goal-directed execution" in which an expression in code returns "success" along with a result, or a "failure", indicating that there is no valid result. The success and failure of a given expression is used to direct further processing, whereas conventional languages would typically use Boolean logic written by the programmer to achieve the same ends.
Nº Q1156474 ★
Common · Knowledge
Icon (programming language)
Programming language
Icon is a very high-level programming language based on the concept of "goal-directed execution" in which an expression in code returns "success" along with a result, or a "failure", indicating that there is no valid result. The success and failure of a given expression is used to direct further processing, whereas conventional languages would typically use Boolean logic written by the programmer to achieve the same ends.
From Wikipedia
Icon is a very high-level programming language based on the concept of "goal-directed execution" in which an expression in code returns "success" along with a result, or a "failure", indicating that there is no valid result. The success and failure of a given expression is used to direct further processing, whereas conventional languages would typically use Boolean logic written by the programmer to achieve the same ends. Because the logic for basic control structures is often implicit in Icon, common tasks can be completed with less explicit code. Icon was designed by Ralph Griswold after leaving Bell Labs where he was a major contributor to the SNOBOL language. SNOBOL was a string-processing language with what would be considered dated syntax by the standards of the early 1970s. After moving to the University of Arizona, he further developed the underlying SNOBOL concepts in SL5, but considered the result to be a failure. This led to the significantly updated Icon, which blends the short but conceptually dense code of SNOBOL-like languages with the more familiar syntax of ALGOL-inspired languages like C or Pascal. Like the languages that inspired it, the primary area of use of Icon is managing strings and textual patterns. String operations often fail, for instance, finding "the" in "world". In most languages, this requires testing and branching to avoid using a non-valid result. In Icon most of these sorts of tests are simply unneeded, reducing the amount of code that must be written. Complex pattern handling can be done in a few lines of terse code, similar to more dedicated languages like Perl but retaining a more function-oriented syntax familiar to users of other ALGOL-like languages. Icon is not object-oriented, but an object-oriented extension named Idol was developed in 1996 which eventually became Unicon. It also inspired other languages,...
Text: Wikipédia, CC BY-SA 4.0. ·
Related cards
-
Homoiconicity
Feature of a programming language that a program written in it can be manipulated as data using the language, and thus the program's internal representation can be inferred just by reading the program itself
Nº Q925488 ★
Not listed
-
P
Pascal (programming language)
Programming language
Nº Q81571 ★★★★
Not listed
-
A
ABC (programming language)
Node js
Nº Q1057802 ★
Not listed
-
C++
General-purpose programming language
Nº Q2407 ★★★★
Not listed
-
L
Logic error
A bug in a program that causes it to operate incorrectly, but not to terminate abnormally
Nº Q1441803 ★★
Not listed
-
C (programming language)
General-purpose programming language
Nº Q15777 ★★★★★★
Not listed