Proposal: Add gcoerceWith to Data.Type.Coercion

Oliver Charles ollie at ocharles.org.uk
Fri Jul 22 08:58:12 UTC 2016


I have wanted this exact function before. +1

On Fri, 22 Jul 2016, 12:27 a.m. Edward Kmett, <ekmett at gmail.com> wrote:

> No objection here. +1
>
> -Edward
>
> On Fri, Jul 22, 2016 at 1:18 AM, David Feuer <david.feuer at gmail.com>
> wrote:
>
>> In Data.Type.Equality, we have both
>>
>> castWith :: (a :~: b) -> a -> b
>>
>> and
>>
>> gcastWith :: (a :~: b) -> (a ~ b => r) -> r
>>
>>
>> But in Data.Type.Coercion we only have
>>
>>
>> coerceWith :: Coercion a b -> a -> b
>>
>>
>> It seems to me that for the sake of consistency, we should add
>>
>>
>> gcoerceWith :: Coercion a b -> (Coercible a b => r) -> r
>> gcoerceWith Coercion a = a
>>
>> David Feuer
>> _______________________________________________
>> Libraries mailing list
>> Libraries at haskell.org
>> http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries
>>
>
> _______________________________________________
> Libraries mailing list
> Libraries at haskell.org
> http://mail.haskell.org/cgi-bin/mailman/listinfo/libraries
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/libraries/attachments/20160722/b995f557/attachment.html>


More information about the Libraries mailing list