Functor => Pointed => Applicative => Monad
wren ng thornton
wren at freegeek.org
Sat Dec 4 06:36:21 CET 2010
On 12/2/10 4:38 PM, Tyson Whitehead wrote:
> On November 30, 2010 00:32:18 wren ng thornton wrote:
>> Not all functors are pointed therefore Pointed=>Functor is invalid.
>
> but, as I think your email argued, this may be equally pedantic to not all
> pointed things are functors as so Functor=>Pointed must also be invalid?
Some folks on this thread have argued for that interpretation.
Personally, I question whether the "pointed" notion of functors should
really be conflated with the "canonical value" notion of non-functors.
But then I don't particularly care whether the new hierarchy has
Functor=>Pointed so long as it does have (Functor,Pointed)=>Applicative
and Applicative=>Monad.
> Personally, I think something like an embedded DSL might have reason to want
> to let embed values (i.e., be pointed) but not lift functions to functions
> over embed values (i.e., be functorial). I think these should be separate.
That does seem like a good reason to ban Functor=>Pointed. Far better
than the bloomfilter argument.
--
Live well,
~wren
More information about the Libraries
mailing list