More tinkering
authorNeil Smith <NeilNjae@users.noreply.github.com>
Thu, 7 Dec 2023 12:13:35 +0000 (12:13 +0000)
committerNeil Smith <NeilNjae@users.noreply.github.com>
Thu, 7 Dec 2023 12:13:35 +0000 (12:13 +0000)
advent07/Main.hs
advent07/MainWithCase.hs

index b839511444c0d4eb4f8102b5b3a20596a2e6eb17..8f4350d293e9fd37abba85ad702396b214a923dd 100644 (file)
@@ -40,10 +40,7 @@ enJoker (Hand cards bid) = Hand jCards bid
   where jCards = replace Jack Joker cards
 
 replace :: Eq a => a -> a -> [a] -> [a]
-replace _ _ [] = []
-replace f t (x:xs) 
-  | x == f = t : replace f t xs
-  | otherwise = x : replace f t xs
+replace f t = fmap (\x -> if x == f then t else x)
 
 classify :: Hand -> ClassifiedHand
 classify (Hand cards bid) 
index 36b4cd86a5178b4db55be5da2de60862907cc016..e5a181fd6217a43804e9233f71cdd6eb1c99d7fe 100644 (file)
@@ -40,10 +40,7 @@ enJoker (Hand cards bid) = Hand jCards bid
   where jCards = replace Jack Joker cards
 
 replace :: Eq a => a -> a -> [a] -> [a]
-replace _ _ [] = []
-replace f t (x:xs) 
-  | x == f = t : replace f t xs
-  | otherwise = x : replace f t xs
+replace f t = fmap (\x -> if x == f then t else x)
 
 classify :: Hand -> ClassifiedHand
 classify (Hand cards bid) =