On 18.07.2008, at 19:47, Don Stewart wrote:
sk:
On 17.07.2008, at 21:46, Lennart Augustsson wrote:
If scaleFloat and exponent are implemented with bit twiddling they can
be quite fast.

is there a way in ghc to 'cast' between float/int32 and double/int64
(without going through memory)?

Yeah,

    "fromIntegral/Int->Float"   fromIntegral = int2Float
    "truncate/Float->Int"       truncate     = float2Int


    "truncate/Double->Int"      truncate = double2Int

with appropriate no-op fromIntegrals for the 32 and 64 variants.

i actually meant something like *(uint32_t*)fptr, but thanks anyway ;)

<sk>

_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to