> Figure 2. Removing the final element of a singly linked list.
Note that both the returned result and list remain mutable,
and the returned result is no longer encapsulated by the
linked list, unlike in prior work (e.g., [26, 46]). Note also that
this function returns none on lists of size one, as it would be
impossible to separate the list from its tail in this case.
Huh, now that sounds like a substantial pitfall... any good way around this?