Discards the value in a functor, retaining the functor's structure.
Discarding values is especially useful when using Applicative
functors or Monad
s to implement
effects, and some operation should be carried out only for its effects. In do
-notation, statements
whose values are discarded must return Unit
, and discard
can be used to explicitly discard their
values.