Icon [L1 ] is a programming language with a long and rich history, although it is even more obscure than tcl.
There are several points of similarity between the two languages, along with many more differences.
- Interpreted with a byte-code compiler
- Built-in memory allocation and garbage collection
- Portable graphical tool kit
- High degree of introspection
- Rich built-in data structures (character sets, lists, sets, strings, tables)
- Invocation of procedures based on a dynamic string value
- Two memory scopes, global and local
- Strongly typed values, but untyped variables
- Primitives for determining if a variable has a value
- No "go to" statement
The data structures are implemented in a way that allows a substantial amount of polymophism. The syntax for interating through all the values in a set, or all the elements in a list, or even all the characters in a string is pretty much the same.
Some of the differences are equally significant.
- The syntax looks more like C than tcl
- Many, many operators
- Procedures can have static data that retains value between invocations
- No dynamic creation of procedures
- Pattern matching is a normal extension of expression evaluation
- Backtracking built into the language
- Characters set limited to 8-bit characters
escargo 10/28/2002
Category Language