-- | Run an evil plan to increment the Tri-State area with the incrementinator. module Main ( main ) where import Acme.Inator incrementinator :: EvilInvention Int Int incrementinator = (+1) . inator evilPlan :: TriStateArea Int evilPlan = do zap <- activate incrementinator as <- mapM zap [1..37] b <- zap 38 -- I never really liked the number 38 selfDestruct incrementinator cs <- mapM zap [39..100] return $ sum as + b + sum cs executeEvilPlan :: Maybe Int executeEvilPlan = whileTrapping perryThePlatypus evilPlan main :: IO () main = do putStrLn $ case executeEvilPlan of Nothing -> "Curse you, Perry the Platypus!" Just a -> "Aha! I have incremented the tri-state area to " ++ show a