data Tree a = Node a [Tree a] deriving (Show) withRoot :: [a] -> [Tree a] withRoot xs = xs |> toThing |> fmap buildTree buildTree :: (a, [a]) toTree :: [a] -> Tree a toTree [x] = Node x [] toTree [x | xs] = Node x (toTree xs)
depot | ||
monorepo for the virus lounge | The Virus Lounge |
about summary refs log tree commit diff |
data Tree a = Node a [Tree a] deriving (Show) withRoot :: [a] -> [Tree a] withRoot xs = xs |> toThing |> fmap buildTree buildTree :: (a, [a]) toTree :: [a] -> Tree a toTree [x] = Node x [] toTree [x | xs] = Node x (toTree xs)