genericLength package:slist

O(1). The genericLength function is an overloaded version of length. In particular, instead of returning an Int, it returns any type which is an instance of Num.
>>> genericLength $ one 42
1

>>> genericLength $ slist [1..3]
3

>>> genericLength $ infiniteSlist [1..]
9223372036854775807