<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On 7 Mar 2011, at 23:38, Alexander Solla wrote:</div><blockquote type="cite"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; position: static; z-index: auto; ">&nbsp;&nbsp; _|_ /= (_|_,_|_)<br></blockquote><div><br></div><div>&gt; (undefined, undefined)</div><div>(*** Exception: Prelude.undefined</div><div><br></div><div>That is as close to Haskell-equality as you can get for a proto-value that does not have an Eq instance. &nbsp;As a consequence of referential transparency, evaluation induces an equivalence relation. &nbsp;This implies that (_|_, _|_) = _|_ =&nbsp;(_|_, _|_).</div>
</div></blockquote><br></div><div>Surely the key thing is the '(' character which is produced immediately before the exception is encountered.</div><div><br></div><div>I'd say that demonstrates that in GHC&nbsp;&nbsp;_|_ /= (_|_,_|_).</div><div><br></div><div>--Ben</div><br></body></html>