-- | -- Module : Acme.Dont -- Copyright : Gracjan Polak 2009 -- License : BSD3 -- Maintainer : Jack Kelly <jack@jackkelly.name> -- Stability : stable -- Portability : portable -- -- Provides the indispensable don't command, ported from Perl. It is -- used exactly like the do monadic construct except that, instead of -- executing the block it controls, it... well... doesn't. -- -- * For more information see influential documentation: -- <http://search.cpan.org/~dconway/Acme-Don-t-1.01/t.pm> -- -- Usage: -- -- > main = don't $ do -- > name <- getLine -- > putStrLn $ "hello " ++ name module Acme.Dont (don't) where -- | Do not execute the argument. don't :: Applicative f => f a -> f () don't :: f a -> f () don't _ = () -> f () forall (f :: * -> *) a. Applicative f => a -> f a pure ()