Proposal: Add Semigroup and Monoid instances for (:~:)
david.feuer at gmail.com
Thu Jan 14 14:08:45 UTC 2016
(:~:) is from Data.Type.Equality.
data a :~: b where
Refl :: a :~: a
On Jan 14, 2016 8:56 AM, "Andreas Abel" <andreas.abel at ifi.lmu.de> wrote:
> What does this smiley :~: stand for?
> On 13.01.2016 06:58, David Feuer wrote:
>> These are not likely to be *useful*, but they fall easily into the
>> general bucket of "exactly one sensible instance exists".
>> instance Semigroup (a :~: b) where
>> r <> _ = r
>> instance a ~ b => Monoid (a :~: b) where
>> mempty = Refl
>> mappend r _ = r
>> Libraries mailing list
>> Libraries at haskell.org
> Andreas Abel <>< Du bist der geliebte Mensch.
> Department of Computer Science and Engineering
> Chalmers and Gothenburg University, Sweden
> andreas.abel at gu.se
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Libraries