<div dir="ltr">+7<div><br></div><div>theres other issues with Data.Complex, but i'll not raise those for this battle today :) </div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Sat, Mar 15, 2014 at 12:16 AM, Edward Kmett <span dir="ltr"><<a href="mailto:ekmett@gmail.com" target="_blank">ekmett@gmail.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">We removed the data type context from <font face="courier new, monospace">Data.Complex</font> some time ago.<div>

<br></div><div>However, when we did so, we left the rest of the API in that module intact.</div>
<div><br></div><div>Many of the accessors in that module (should) work with much more general types now!</div><div><br></div><div>e.g. </div><div><br></div><div><font face="courier new, monospace">realPart :: Complex a -> a</font></div>


<div><br></div><div>instead of</div><div><br></div><div><font face="courier new, monospace">realPart :: RealFloat a => Complex a -> a</font></div><div><br></div><div>I propose we stop passing around dictionaries we don't need to methods that don't use them.</div>


<div><br></div><div>Concretely, I'm proposing we simplify the signatures of the following functions, which in the current API all unnecessarily take a <font face="courier new, monospace">RealFloat</font> constraint that they don't use.</div>


<div><br></div><font face="courier new, monospace">realPart :: Complex a -> a<br>imagPart :: Complex a -> a<br>conjugate :: Num a => Complex a -> Complex a<br>mkPolar   :: Floating a => a -> a -> Complex a<br>


cis       :: Floating a => a -> Complex a</font><div><br></div><div>Discussion Period: 2 weeks</div><span class="HOEnZb"><font color="#888888"><div><br></div><div>-Edward Kmett</div></font></span></div>
<br>_______________________________________________<br>
Libraries mailing list<br>
<a href="mailto:Libraries@haskell.org">Libraries@haskell.org</a><br>
<a href="http://www.haskell.org/mailman/listinfo/libraries" target="_blank">http://www.haskell.org/mailman/listinfo/libraries</a><br>
<br></blockquote></div><br></div>