Re: Folding constants for floats

2014-01-14 Thread Carter Schonwald
maybe so, but having a semantics by default is huge, and honestly i'm not super interested in optimizations that merely change one infinity for another. What would the alternative semantics be? Whatever it is, how will we communicate it to our users? GHC's generally been (by accidenta) IEEE

Re: Folding constants for floats

2014-01-14 Thread Sven Panne
2014/1/14 Carter Schonwald carter.schonw...@gmail.com: maybe so, but having a semantics by default is huge, and honestly i'm not super interested in optimizations that merely change one infinity for another. What would the alternative semantics be? I'm not sure that I understood your reply: My

Re: Folding constants for floats

2014-01-14 Thread Carter Schonwald
Sven, I'm one of those people who cares about numerical performance :-). Kinda been my obsession :-). My near term stop gap is writing some very high quality ffi bindings, but I'm very keen on Haskell giving fortran a run for it's money. Glad we agree the version that's easier to debug (IEEE, ie

Re: Folding constants for floats

2014-01-14 Thread Isaac Dupree
On 01/14/2014 11:48 AM, Sven Panne wrote: My point was: As much as I propose to keep these current semantics, there might be users who care more about performance than IEEE-754-conformance. Adding a -ffast-math flag could be fine IMHO. For those, relatively simple semantics could be:

Re: Folding constants for floats

2014-01-13 Thread Carter Schonwald
This is actually a bit more subtle than you'd think. Are those constants precise and exact? (There's certainly floating point code that exploits the cancellations in the floating point model) There's many floating point computations that can't be done with exact rational operations. There's

Re: Folding constants for floats

2014-01-13 Thread Carter Schonwald
Oh I see the ticket. Are you focusing on adding hex support to Double# and Float# ? That would be splendid. We currently don have a decent way of writing nan, and the infinities. That would be splendid. On Monday, January 13, 2014, Carter Schonwald wrote: This is actually a bit more subtle

Re: Folding constants for floats

2014-01-13 Thread Kyle Van Berendonck
Hi, I'd like to work on the primitives first. They are relatively easy to implement. Here's how I figure it; The internal representation of the floats in the cmm is as a Rational (ratio of Integers), so they have infinite precision. I can implement all the constant folding by just writing my own

Re: Folding constants for floats

2014-01-13 Thread Isaac Dupree
On 01/13/2014 05:21 PM, Kyle Van Berendonck wrote: Hi, I'd like to work on the primitives first. They are relatively easy to implement. Here's how I figure it; The internal representation of the floats in the cmm is as a Rational (ratio of Integers), so they have infinite precision. I can