blob: 8496d88c0c0c7b94a1d6f5ae5164bba0b471cf03 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
|
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)
|