Advertisement
fsimen

Untitled

Jun 8th, 2015
230
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.74 KB | None | 0 0
  1. {-# OPTIONS_GHC -fno-warn-orphans #-}
  2. module Party where
  3. import Employee
  4.  
  5. glCons :: Employee -> GuestList -> GuestList
  6. glCons emp gl = if (elem emp gl_list) then gl
  7. else GL ([emp]++gl_list) (g_fun+(empFun emp))
  8. where
  9. (GL gl_list g_fun) = gl
  10.  
  11. instance Monoid GuestList where
  12. mappend gl1 gl2 = GL (gl1_list ++ gl2_list) (gl1_fun + gl2_fun)
  13. where
  14. (GL gl1_list gl1_fun) = gl1
  15. (GL gl2_list gl2_fun) = gl2
  16. mempty = GL [] 0
  17.  
  18. moreFun :: GuestList -> GuestList -> GuestList
  19. moreFun gl1@(GL _ fun1) gl2@(GL _ fun2) = if (fun1 < fun2) then gl2
  20. else gl1
  21.  
  22.  
  23. treeFold :: b -> (b->[a]->b) -> Tree a ->b
  24. treeFold b _ Empty = b
  25. treeFold b f (Node root forest) = f b
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement