Avoid passing unnecessary dictionaries in Data.Complex

Andreas Abel andreas.abel at ifi.lmu.de
Sat Mar 15 08:54:54 UTC 2014


+1 of course.

On 15.03.2014 05:16, Edward Kmett wrote:
> We removed the data type context from Data.Complex some time ago.
>
> However, when we did so, we left the rest of the API in that module intact.
>
> Many of the accessors in that module (should) work with much more
> general types now!
>
> e.g.
>
> realPart :: Complex a -> a
>
> instead of
>
> realPart :: RealFloat a => Complex a -> a
>
> I propose we stop passing around dictionaries we don't need to methods
> that don't use them.
>
> Concretely, I'm proposing we simplify the signatures of the following
> functions, which in the current API all unnecessarily take a RealFloat
> constraint that they don't use.
>
> realPart :: Complex a -> a
> imagPart :: Complex a -> a
> conjugate :: Num a => Complex a -> Complex a
> mkPolar   :: Floating a => a -> a -> Complex a
> cis       :: Floating a => a -> Complex a
>
> Discussion Period: 2 weeks
>
> -Edward Kmett
>
>
> _______________________________________________
> Libraries mailing list
> Libraries at haskell.org
> http://www.haskell.org/mailman/listinfo/libraries
>


-- 
Andreas Abel  <><      Du bist der geliebte Mensch.

Department of Computer Science and Engineering
Chalmers and Gothenburg University, Sweden

andreas.abel at gu.se
http://www2.tcs.ifi.lmu.de/~abel/


More information about the Libraries mailing list