История изменений
Исправление Miguel, (текущая версия) :
foo n = length $ iterate (\l -> l >>= \x -> map (:x) al) [[]] !! n
Короче можно
foo n = length $ iterate (>>= \x -> map (:x) al) [[]] !! n
Исходная версия Miguel, :
foo n = length $ iterate (\l -> l >>= \x -> map (:x) al) [[]] !! n
Короче можно
length $ iterate (>>= \x -> map (:x) al) [[]] !! n