<div class="gmail_quote">Hi,<br><br>On Mon, Jun 29, 2009 at 2:45 PM, Ross Paterson <span dir="ltr"><<a href="mailto:ross@soi.city.ac.uk">ross@soi.city.ac.uk</a>></span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Although (<$) is now a method of the Functor class, it is hidden in the<br>
re-export by the Prelude, Control.Monad and Monad. The new module<br>
Data.Functor exposes the full class, plus the function (<$>). These are<br>
also re-exported by Control.Applicative.<br>
</blockquote></div><br>Could we come up with some policy on what goes in Control.* versus Data.*? As we add more and more modules that fits in both categories it's becoming increasingly hard to remember what lives where. Using both Data and Control gives import lists an ugly asymmetry:<br>
<br>import Control.Applicative<br>import Data.Functor<br>import Control.Monad<br><br>Cheers,<br><br>Johan<br><br>