In this context, the string that they operate on is not specified and is taken to be the subject. As illustrated in the examples above, any expression may occur in the scanning expression. Structures Icon supports several kinds of structures with different organizations and access methods. Lists are linear structures that can be accessed both by position and by stack and queue functions. Sets are collections of arbitrary values with no implied ordering.
Tables provide an associative lookup mechanism.
While strings are sequences of characters, lists in Icon are sequences of values of arbitrary types. Lists are created by enclosing the lists of values in brackets. Note that the values in a list need not all be of the same type. The values in a list can be referenced by position. A reference that is out of the range of the list fails.