<div dir="ltr"><div>> <span style="font-size:14px">sum a tuple of monoids</span></div><div><span style="font-size:14px"><br></span></div><div>here is something, not quite what you are looking for, but close:</div><div><br></div><div><a href="http://hackage.haskell.org/package/base-4.9.0.0/docs/Data-Monoid.html#t:Monoid" style="font-size:14px;margin:0px;padding:0px;color:rgb(171,105,84);font-family:monospace;white-space:nowrap;background-color:rgb(240,240,240)">Monoid</a><span style="font-size:14px;color:rgb(0,0,0);font-family:monospace;white-space:nowrap;background-color:rgb(240,240,240)"> a => </span><a href="http://hackage.haskell.org/package/base-4.9.0.0/docs/Data-Monoid.html#t:Monoid" style="font-size:14px;margin:0px;padding:0px;text-decoration:none;color:rgb(171,105,84);font-family:monospace;white-space:nowrap;background-color:rgb(240,240,240)">Monoid</a><span style="font-size:14px;color:rgb(0,0,0);font-family:monospace;white-space:nowrap;background-color:rgb(240,240,240)"> (</span><a href="http://hackage.haskell.org/package/base-4.9.0.0/docs/Data-Maybe.html#t:Maybe" style="font-size:14px;margin:0px;padding:0px;text-decoration:none;color:rgb(171,105,84);font-family:monospace;white-space:nowrap;background-color:rgb(240,240,240)">Maybe</a><span style="font-size:14px;color:rgb(0,0,0);font-family:monospace;white-space:nowrap;background-color:rgb(240,240,240)"> a)</span><br></div><div><span style="color:rgb(0,0,0);font-family:monospace;font-size:14px;white-space:nowrap;background-color:rgb(240,240,240)">(</span><a href="http://hackage.haskell.org/package/base-4.9.0.0/docs/Data-Monoid.html#t:Monoid" style="margin:0px;padding:0px;color:rgb(171,105,84);font-family:monospace;font-size:14px;white-space:nowrap;background-color:rgb(240,240,240)">Monoid</a><span style="color:rgb(0,0,0);font-family:monospace;font-size:14px;white-space:nowrap;background-color:rgb(240,240,240)"> a, </span><a href="http://hackage.haskell.org/package/base-4.9.0.0/docs/Data-Monoid.html#t:Monoid" style="margin:0px;padding:0px;text-decoration:none;color:rgb(171,105,84);font-family:monospace;font-size:14px;white-space:nowrap;background-color:rgb(240,240,240)">Monoid</a><span style="color:rgb(0,0,0);font-family:monospace;font-size:14px;white-space:nowrap;background-color:rgb(240,240,240)"> b) => </span><a href="http://hackage.haskell.org/package/base-4.9.0.0/docs/Data-Monoid.html#t:Monoid" style="margin:0px;padding:0px;text-decoration:none;color:rgb(171,105,84);font-family:monospace;font-size:14px;white-space:nowrap;background-color:rgb(240,240,240)">Monoid</a><span style="color:rgb(0,0,0);font-family:monospace;font-size:14px;white-space:nowrap;background-color:rgb(240,240,240)"> (a, b)</span><font color="#000000" face="monospace"><span style="white-space:nowrap"><br></span></font><div><span style="color:rgb(0,0,0);font-family:monospace;font-size:14px;white-space:nowrap;background-color:rgb(240,240,240)"><br></span></div><div><span style="background-color:rgb(240,240,240)"><div><div><font color="#000000" face="monospace"><span style="white-space:nowrap">mappend (Just [1], Just [2,3]) (Nothing, Just [5])::(Maybe [Int],Maybe [Int])</span></font></div><div><font color="#000000" face="monospace"><span style="white-space:nowrap">(Just [1],Just [2,3,5])</span></font></div></div><div><br></div></span></div></div>​</div>