All of these built-ins are Icon keywords, which are identifiers that begin with an ampersand character. Records name a set of fields. References to records have pointer semantics automatically. Records are always allocated from the heap when they are constructed. The implementation of them is not a simple linked list form, and is efficient for any of these kinds of operations.
Lists have many operations that look like string operations, but lists are mutable, unlike strings.
When a list element is assigned a new value, the existing list is changed rather than a new list being produced. It is very interesting to compare Icon with Lisp. They have similar features, but a very different notation. One way to see this comparison is to write portions of Icon in Lisp. L end Sets and Tables Icon sets and tables are both based on a common set of dynamic hashing facilities.