Functor => Pointed => Applicative => Monad

David Menendez dave at zednenem.com
Mon Nov 29 18:46:28 CET 2010


On Mon, Nov 29, 2010 at 11:26 AM, Isaac Dupree
<ml at isaac.cedarswampstudios.org> wrote:
> On 11/29/10 03:39, John Smith wrote:
>>
>> Is there any intention to reorganise the standard class hierarchy,
>> arranging them logically instead of in order of invention? I plagiarised
>> the following example from
>> http://stackoverflow.com/questions/1634911/can-liftm-differ-from-lifta
>> and Trac:
>>
>> class Functor f where
>> map :: (a -> b) -> f a -> f b
>>
>> class Functor f => Pointed f where
>> pure :: a -> f a
>
> Is it useful to have Pointed non-Functors?

Is Pointed useful at all? The last time this discussion came up, I
asked for algorithms which were generic over pointed functors (in the
same way that traverse is generic over applicative functors) and no
one could think of any.

Without <*> or >>=, all we can say about pure is that it's a natural
transformation.

-- 
Dave Menendez <dave at zednenem.com>
<http://www.eyrie.org/~zednenem/>


More information about the Libraries mailing list