Aim is for time and memory efficiency first, aesthetics second. Generics and type erasure are cool, but have too much overhead in both time and memory for handling large chains.