This type is used to handle collections of items of any of the DGL types. A list is created either by explicitly enumerating the items in the list, or as a result of a function call. Explicit enumeration is written as:
{ list_item , list_item , ... }
as in the string list: {’abc’, ’def’, ’xyz’} .
A list item must be an expression of the list type.
All items in the list must be of the same type. Lists can be created from other lists using the operations: union (+), subtraction (-), intersection (*), and concatenation (&).
This last operation differs from union when two identical lists are used, for instance:
{’Alpha’}+{’Alpha’} produces {’Alpha’},
while {’Alpha’} & {’Alpha’} produces {’Alpha’,’Alpha’} .A list expression can also be built as a result of a function. For example,
stm_r_md_name_of_md ( ’M*’ , st) .
The value of this list expression is all modules whose names begin with M.