How do you calculate the length of a singly-linked list that may be cyclic? CLHS includes a nice implementation: https://clhs.lisp.se/Body/f_list_l.htm