
On Sun, Sep 5, 2010 at 7:47 AM, Ivan Lazar Miljenovic < ivan.miljenovic@gmail.com> wrote:
On 5 September 2010 22:40, John Lato
wrote: Having Pointed is categorically the right thing to do, which is why I
argue
for its inclusion. Also, I think it would be prudent to avoid a situation with the possibility of turning into a rehash of the Functor/Applicative/Monad mess.
Are there any good reasons for not including it? Just because we don't have a use now doesn't mean it might not be useful in the future.
Only reason I can think of: it's a pain to make useless class instances when there is no reason why they can't be combined (since you never make an instance of one without an instance of the other).
It's a one-time cost, though, so to me at least it's not a big deal.
I _can_ think of a data type that could conceivably be an instance of Pointed but not Applicative: a BloomFilter (though there's not really any point in having a BloomFilter with only one value that I can see, but maybe someone can since there's the singletonB function).
Thanks for mentioning this. Bloom filters certainly are an interesting structure, in many ways. John