Cycle detection for recursive functions, such as those walking branching directed graphs, like JSON serialisers.
An immutable implementation of Floyd's Tortoise and Hare algorithm, with optional wrapper that allow you to simply pass one value in at a time, an invaluable feature in a recursive context.