activate :: EvilInvention a b -> TriStateArea (a -> TriStateArea b)Source

EvilInvention s must be activated before use. The activated machine can then be applied to suitable targets of scorn and dislike. N.B.: Activation and subsequent operation of an EvilInvention can only be performed in the TriStateArea .

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