<div dir="ltr"><span style="font-family:Arial,Helvetica,sans-serif;font-size:13px">Hello,</span><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px"><br></div><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px">As part of my exercise, I have to create an instance of the show typeclass for a given data type defined as:</div><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px"><ol start="1" style="padding:0px;border:none;outline:0px;font-size:14px;vertical-align:baseline;font-family:Consolas,monospace;line-height:25px;list-style:none!important;background-color:rgb(0,0,0)"><li style="line-height:18px;border:0px;outline:0px;vertical-align:baseline;margin:0px!important;padding:0px 3px!important;list-style:none!important;background-color:inherit"><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;background-color:inherit"><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;background-color:inherit"><b style="color:rgb(149,228,84)">type </b><font color="#ffffff" style="margin:0px;padding:0px;border:0px">stat </font><b style="color:rgb(149,228,84)">= (</b><font color="#ffffff" style="margin:0px;padding:0px;border:0px">String</font><b style="color:rgb(149,228,84)">, <span style="margin:0px;padding:0px;border:0px;color:rgb(255,255,255);font-weight:normal">Int</span>)</b><font color="#ffffff" style="margin:0px;padding:0px;border:0px">  </font></span></span></li></ol></div><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px"><u>If</u> it was a data type, like:</div><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px"><ol start="1" style="padding:0px;border:none;outline:0px;font-size:14px;vertical-align:baseline;color:rgb(92,92,92);font-family:Consolas,monospace;line-height:25px;margin:0px 0px 1px!important;list-style:none!important;background-color:rgb(0,0,0)"><li style="line-height:18px;border:0px;outline:0px;vertical-align:baseline;color:inherit;margin:0px!important;padding:0px 3px!important;list-style:none!important;background-color:inherit"><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;color:white;background-color:inherit"><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;color:rgb(149,228,84);font-weight:bold;background-color:inherit">data</span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;background-color:inherit"> </span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;background-color:inherit">TrafficLight</span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;color:rgb(138,198,242);background-color:inherit"> = </span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;background-color:inherit">Red</span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;color:rgb(138,198,242);background-color:inherit"> | </span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;background-color:inherit">Yellow</span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;color:rgb(138,198,242);background-color:inherit"> | </span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;background-color:inherit">Green</span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;background-color:inherit">  </span></span></li></ol></div><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px"><br></div><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px">It would be as simple as doing:</div><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px"><ol start="1" style="padding:0px;border:none;outline:0px;font-size:14px;vertical-align:baseline;color:rgb(92,92,92);font-family:Consolas,monospace;line-height:25px;list-style:none!important;background-color:rgb(0,0,0)"><li style="line-height:18px;border:0px;outline:0px;vertical-align:baseline;color:inherit;margin:0px!important;padding:0px 3px!important;list-style:none!important;background-color:inherit"><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;color:white;background-color:inherit"><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;color:rgb(149,228,84);font-weight:bold;background-color:inherit">instance</span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;background-color:inherit"> </span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;background-color:inherit">Show</span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;background-color:inherit"> </span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;background-color:inherit">TrafficLight</span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;background-color:inherit"> </span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;color:rgb(149,228,84);font-weight:bold;background-color:inherit">where</span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;background-color:inherit">  </span></span></li><li style="line-height:18px;border:0px;outline:0px;vertical-align:baseline;margin:0px!important;padding:0px 3px!important;list-style:none!important;background-color:inherit"><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;color:white;background-color:inherit">    show <span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;background-color:inherit">Red</span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;color:rgb(138,198,242);background-color:inherit"> = </span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;color:rgb(255,255,153);background-color:inherit">"Red light"</span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;background-color:inherit">  </span></span></li><li style="line-height:18px;border:0px;outline:0px;vertical-align:baseline;color:inherit;margin:0px!important;padding:0px 3px!important;list-style:none!important;background-color:inherit"><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;color:white;background-color:inherit">    show <span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;background-color:inherit">Yellow</span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;color:rgb(138,198,242);background-color:inherit"> = </span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;color:rgb(255,255,153);background-color:inherit">"Yellow light"</span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;background-color:inherit">  </span></span></li><li style="line-height:18px;border:0px;outline:0px;vertical-align:baseline;margin:0px!important;padding:0px 3px!important;list-style:none!important;background-color:inherit"><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;color:white;background-color:inherit">    show <span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;background-color:inherit">Green</span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;color:rgb(138,198,242);background-color:inherit"> = </span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;color:rgb(255,255,153);background-color:inherit">"Green light"</span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;background-color:inherit"> </span></span></li></ol></div><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px"><br></div><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px">However, I do not know how to declare the instance for a type, and then how to access its elements (String and Int).</div><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px"><br></div><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px">This is what I have so far, which does not work:</div><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px"><ol start="1" style="padding:0px;border:none;outline:0px;font-size:14px;vertical-align:baseline;font-family:Consolas,monospace;line-height:25px;color:rgb(92,92,92);list-style:none!important;background-color:rgb(0,0,0)"><li style="line-height:18px;border:0px;outline:0px;vertical-align:baseline;color:inherit;margin:0px!important;padding:0px 3px!important;list-style:none!important;background-color:inherit"><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;color:white;background-color:inherit"><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;color:rgb(149,228,84);font-weight:bold;background-color:inherit">instance</span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;background-color:inherit"> </span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;background-color:inherit">Show</span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;background-color:inherit"> Stat </span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;color:rgb(149,228,84);font-weight:bold;background-color:inherit">where</span><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;background-color:inherit">  </span></span></li><li style="line-height:18px;border:0px;outline:0px;vertical-align:baseline;margin:0px!important;padding:0px 3px!important;list-style:none!important;background-color:inherit"><span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;color:white;background-color:inherit">    show stat(a,b) <span style="margin:0px;padding:0px;border:none;outline:0px;vertical-align:baseline;color:rgb(138,198,242);background-color:inherit">= </span></span><span style="margin:0px;padding:0px;border:0px;color:rgb(255,255,255)">a</span></li></ol></div><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px"><div style="margin:0px;padding:0px;border:0px">instance Show Stat where</div><div style="margin:0px;padding:0px;border:0px">  show stat(a b) = b</div></div><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px"><br></div><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px">(imagine, for example, I desire to write" the value of "String" is "Int").</div><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px"><br></div><div style="margin:0px;padding:0px;border:0px;font-family:Arial,Helvetica,sans-serif;font-size:13px">Thanks,</div></div>