<div dir="ltr">Won't show include all the components? I wanted to include only the type name.<div><br></div><div>I could probably get away with bundling all the contents into the error string but it would be nice to know if there is a standard way to get type names like this.</div>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Sun, Jan 12, 2014 at 2:33 PM, fa-ml <span dir="ltr"><<a href="mailto:fa-ml@ariis.it" target="_blank">fa-ml@ariis.it</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im">On Sun, Jan 12, 2014 at 02:04:40PM +0000, Gareth Morgan wrote:<br>
> I have a sum type, when the input is type A I want to process it, when it<br>
> is type B I want to return MyError "Expected type A but actually got type<br>
> B". However I also have C,D,E,F, etc which should also return similar<br>
> errors so don't want to hardcode this string.<br>
<br>
</div>Would pattern matching be enough for you? i.e. (very crude):<br>
<br>
    data Test = Alfa | Beta | Gamma deriving (Show)<br>
<br>
    testAlfa Alfa = undefined -- put your process function here<br>
    testAlfa o    = error $ "wasn't expecting " ++ show o<br>
<br>
    main = testAlfa Beta<br>
<br>
<br>_______________________________________________<br>
Beginners mailing list<br>
<a href="mailto:Beginners@haskell.org">Beginners@haskell.org</a><br>
<a href="http://www.haskell.org/mailman/listinfo/beginners" target="_blank">http://www.haskell.org/mailman/listinfo/beginners</a><br>
<br></blockquote></div><br></div>