[1] Because assoc uses is_equal, it can recognize keys that are strings, numbers, or list structure.
[2] Thus, the first backbone pair is the object that represents the table itself; that is, a pointer to the table is a pointer to this pair. This same backbone pair always starts the table. If we did not arrange things in this way, insert would have to return a new value for the start of the table when it added a new record.
3.3.3 Representing Tables