Advertisement
Guest User

Untitled

a guest
Oct 22nd, 2019
112
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. --Matthew Larson Exercise 9.1 10/21/2019
  2. --Functor.hs
  3.  
  4. import Prelude
  5.  
  6. data BinaryTree a
  7.         = EmptyTree
  8.         | Node a (BinaryTree a) (BinaryTree a)
  9.         deriving (Show)
  10.  
  11. instance Functor (BinaryTree) where
  12.   fmap f EmptyTree = EmptyTree
  13.   fmap f (Node a (left)(right)) = Node (f a) (fmap f left ) (fmap f right)
  14.  
  15. tree :: BinaryTree Integer
  16. tree = Node 3
  17.         (Node 1
  18.             (Node 0 EmptyTree EmptyTree)
  19.             (Node 2 EmptyTree EmptyTree))
  20.         (Node 5
  21.             (Node 4 EmptyTree EmptyTree)
  22.             (Node 6 EmptyTree EmptyTree))
  23.  
  24. --Exercise 9.3
  25.  
  26.  -- :t fmap :: Functor f => (a -> b) -> (c -> a) -> c -> b
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement