lab06: impl
This commit is contained in:
@@ -3,6 +3,10 @@
|
|||||||
> | Node v (Tree v) (Tree v)
|
> | Node v (Tree v) (Tree v)
|
||||||
> deriving (Show)
|
> deriving (Show)
|
||||||
|
|
||||||
|
> instance Functor Tree where
|
||||||
|
> fmap f (Node v left right) = Node (f v) (fmap f left) (fmap f right)
|
||||||
|
> fmap f Empty = Empty
|
||||||
|
|
||||||
The findT method shows how we may search through the tree to find a value.
|
The findT method shows how we may search through the tree to find a value.
|
||||||
|
|
||||||
> findT :: Ord v => v -> Tree v -> Maybe v
|
> findT :: Ord v => v -> Tree v -> Maybe v
|
||||||
@@ -18,4 +22,3 @@ The findT method shows how we may search through the tree to find a value.
|
|||||||
Your job is to add support for fmap to this tree, so that the call to fmap below works:
|
Your job is to add support for fmap to this tree, so that the call to fmap below works:
|
||||||
|
|
||||||
> main = print $ fmap (+1) (Node 3 (Node 1 Empty Empty) (Node 7 (Node 4 Empty Empty) Empty))
|
> main = print $ fmap (+1) (Node 3 (Node 1 Empty Empty) (Node 7 (Node 4 Empty Empty) Empty))
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user