Data.Fix

data Fix f

Simple recursion

cata

ana

hylo

(~>)

Monadic recursion

cataM

anaM

hyloM