SICP — Scheme/JS Structure and Interpretation of Computer Programs — Comparison Edition

[1]
Original Python
Because assoc uses equal?, it can recognize keys that are symbols, numbers, or list structure. Because assoc uses ==, 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! 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