O(log n) ish list node at caching. You can sortish use a list as if it were a dynamically resizable array and get best case O(1) lookup with list_at. Things like list_shift, list_sort and list_erase will thrash the list-at caching delivering O(n). Tail operations, i.e list_push, list_pop and list_copy won't.