On Jun 22, 2007, at 12:34 PM, Dave Bayer wrote:

In particular, I always want defaulting errors, because sometimes I miss the fact that numbers I can count on my fingers are defaulting to Integer.

So no one took the bait to actually offer me a shorter idiom, but I thought about the above sentence, and had a big Homer Simpson "Doh!" revelation. In the acual code I was cleaning up, just write out the exponentiations, for example,

evalBezier :: R -> Bezier -> [R]
evalBezier t b = let s = 1-t in case b of
    Line x y -> s*.x .+. t*.y
Cubic w x y z -> s*s*s*.w .+. 3*s*s*t*.x .+. 3*s*t*t*.y .+. t*t*t*.z

To my taste, that's much prettier than half a dozen lines of declarations to get ^ to behave with ghc -Wall -Werror, and after all I'm just hand-unrolling the code for ^.
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to