Hi Dimitry, > y :: Float -> Float > > y f = case f of > 1.0 -> 2.0 > 3.45 -> 0.2e-4 > 0.99 -> 7.463 > other -> -3.65 Oh dear, that definately looks like a bug! I'll look into it later - the Float/Double stuff has so far been entirely unused by my code, so thats probably how these bugs have survived. Thanks Neil