Plan 9 from Bell Labs’s /usr/web/sources/contrib/fernan/nhc98/src/prelude/List/Unfoldr.hs
module List where unfoldr :: (b -> Maybe (a,b)) -> b -> [a] unfoldr f b = case (f b) of Nothing -> [] (Just (a,b)) -> a : unfoldr f b