<br><br><div><span class="gmail_quote">2006/10/10, David Roundy &lt;<a href="mailto:droundy@darcs.net">droundy@darcs.net</a>&gt;:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<br>&gt;declassify :: Secret a -&gt; String -&gt; Maybe a<br>&gt;declassify (Secret pw x) pw' | pw' == pw = Just x<br>&gt;declassify (Secret _ _) _ = Nothing</blockquote></div><br>Why does this works? &quot;Yet Another Haskell Tutorial&quot; teaches that pattern matching occurs at one stage and guard processing at other, and that there's no back (page 94).
<br clear="all"><br>-- <br>Felipe.