<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body dir="auto"><div>Thanks, is there a recommended tutorial that walks through the type signatures of Arrow and sample implementations, and use in practice? Where the newbie reading it may need more hand holding.</div><div><br>Sent from my iPad</div><div><br>On May 14, 2015, at 7:26 PM, Alexey Shmalko <<a href="mailto:rasen.dubi@gmail.com">rasen.dubi@gmail.com</a>> wrote:<br><br></div><blockquote type="cite"><div><div dir="ltr"><div>Hi, Michael,</div><div><br></div>It's irrefutable pattern - the pattern that matches lazily. You can get more info here [1].<br><br>Hope this helps,<div>Alexey Shmalko<br><br>[1]: <a href="http://en.wikibooks.org/wiki/Haskell/Laziness#Lazy_pattern_matching">http://en.wikibooks.org/wiki/Haskell/Laziness#Lazy_pattern_matching</a></div></div><br><div class="gmail_quote">On Fri, May 15, 2015 at 4:17 AM Michael Jones <<a href="mailto:mike@proclivis.com">mike@proclivis.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I am poking around in Arrow to understand it better. There is the following definition:<br>
<br>
    second :: a b c -> a (d,b) (d,c)<br>
    second f = arr swap >>> first f >>> arr swap<br>
      where<br>
        swap :: (x,y) -> (y,x)<br>
        swap ~(x,y) = (y,x)<br>
<br>
Can someone explain what the ~ is? Searching the net resulted in frustration.<br>
<br>
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.<br>
<br>
Thanks<br>
_______________________________________________<br>
Haskell-Cafe mailing list<br>
<a href="mailto:Haskell-Cafe@haskell.org" target="_blank">Haskell-Cafe@haskell.org</a><br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe</a><br>
</blockquote></div>
</div></blockquote></body></html>