<div dir="ltr"><font face="arial, sans-serif">I usually have 'Use Show instance' switched off (aka use 'built-in printer'), so I can see (at least in crude form) imported or 'system' datatypes that don't have show instances/also it's a bit more revealing if I get exceptions.</font><div><font face="arial, sans-serif"><br></font></div><div><font face="arial, sans-serif">I have a datatype:</font><div><font face="arial, sans-serif"><br></font></div><div><font face="arial, sans-serif">>    data Tree a = Empty<br>>            | Leaf a<br>>            | Node (Tree a) a (Tree a)  <br>>            deriving (Eq, Show, Read)<br></font></div></div><div><font face="arial, sans-serif"><br></font></div><div><font face="arial, sans-serif">For results of expressions that were `Node`s, the built-in printer just ignored the first field. (`show`/print of those values works fine.)</font></div><div><font face="arial, sans-serif"><br></font></div><div><font face="arial, sans-serif">>        FoldableTree>  myTree <> fdmap toUpper myTree<br>>        Node 'c' Empty<br></font></div><div><font face="arial, sans-serif"><br></font></div><div><font face="arial, sans-serif">>        FoldableTree> print $ myTree <> fdmap toUpper myTree<br>>        Node (Node Empty 'A' (Node Empty 'C' (Leaf 'a'))) 'c' Empty<br><br></font></div><div><font face="arial, sans-serif"><br></font></div><div><font face="arial, sans-serif">Most disconcerting until I realised what was going on. (Of course I don't expect the built-in printer to produce pretty output).</font></div><div><font face="arial, sans-serif"><br></font></div><div><font face="arial, sans-serif">AntC</font></div></div>