[Haskell-cafe] Re: Adding an ignore function to Control.Monad
Dan Doel
dan.doel at gmail.com
Sat Jul 11 04:17:35 EDT 2009
On Saturday 11 July 2009 3:35:27 am Jeff Wheeler wrote:
> On Fri, Jul 10, 2009 at 10:10 PM, Don Stewart<dons at galois.com> wrote:
> >> ## Control.Monad.void m a -> m ()
> >> Don Stewart
> >> Iavor Diatchki
>
> For whatever it's worth, I prefer void as well, for the exact reason
> Don said. Indeed, 'ignore' indicates to me that the argument won't
> even be evaluated: it'll be ignored, and skipped. But it is, and only
> part --- the result --- is ignored.
>
> What about 'void' with functors?
Perhaps it should be noted that 'void' is sometimes associated with the type:
data Void
the 'empty' type (which isn't empty in Haskell). In typical catamorphism
style, void would be its eliminator:
void :: forall a. Void -> a
void _ = undefined
-- if you're writing Agda
-- void ()
This, doesn't see much use in Haskell, though, so perhaps it's irrelevant.
-- Dan
More information about the Haskell-Cafe
mailing list