[Haskell-cafe] Equality Contstraint?
Michael Jones
mike at proclivis.com
Fri May 15 01:17:07 UTC 2015
I am poking around in Arrow to understand it better. There is the following definition:
second :: a b c -> a (d,b) (d,c)
second f = arr swap >>> first f >>> arr swap
where
swap :: (x,y) -> (y,x)
swap ~(x,y) = (y,x)
Can someone explain what the ~ is? Searching the net resulted in frustration.
I kind of think it is some kind of equality constraint but can’t find documentation. Perhaps if I knew what it was called I might succeed in finding something. If it is an equality constraint, please provide a reference if you have one. I did not find anything in a search including GHC, etc.
Thanks
More information about the Haskell-Cafe
mailing list