Haskell Language Appiattimento di una struttura pieghevole in un elenco


Esempio

toList appiattisce un Foldable struttura ta in un elenco di a s.

ghci> toList [7, 2, 9]  -- t ~ []
[7, 2, 9]
ghci> toList (Right 'a')  -- t ~ Either e
"a"
ghci> toList (Left "foo")  -- t ~ Either String
[]
ghci> toList (3, True)  -- t ~ (,) Int
[True]

toList è definito come equivalente a:

class Foldable t where
    -- ...
    toList :: t a -> [a]
    toList = foldr (:) []