
11 Jan
2019
11 Jan
'19
1:03 p.m.
At run-time, only the branch (Left/Right) is "picked" at run-time. For each branch, the "show" instance is determined at compile-time. The problem is that such instances are represented by dictionaries, and this adds extra cost (extra arguments) to function calls - but only in those cases where these dictionaries are not inlined (that is, removed) statically. But I am thinking that GHC has become very good at inlining. - J.W.