#82: Not a Number --------------------+------------------------------------------------------- Reporter: guest | Owner: nobody Type: defect | Status: new Priority: minor | Milestone: Component: hugs | Version: 200609 Keywords: | --------------------+------------------------------------------------------- My Program was: {{{ cosineSeries :: Float -> [Float] cosineSeries x = scanl (cosineSerPartSum x) 1 [1..] cosineSerPartSum :: Float -> Float -> Integer -> Float cosineSerPartSum x prev i = prev + ((-1) ^ i) * (x ^ (2 * i)) / fromIntegral (fak (2 * i)) fak :: Integer -> Integer fak n = product [1..n] }}} My Study Mate is running WinHugs and when he types "cosineSeries 2" he gets many Numbers.... I am Running hugs98 on a Mac. Im getting something like this: Main> cosineSeries 2 [1.0,-1.0,-0.3333333,-0.4222222,-0.415873,-0.4161552,-0.4161466,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,-0.4161468,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,çnan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,nan,^C{Interrupted!} -- Ticket URL: http://hackage.haskell.org/trac/hugs/ticket/82 Hugs http://www.haskell.org/hugs/ Hugs 98, an interpreter for Haskell
#82: Not a Number ----------------------+----------------------------------------------------- Reporter: guest | Owner: nobody Type: defect | Status: closed Priority: minor | Milestone: Component: hugs | Version: 200609 Resolution: invalid | Keywords: ----------------------+----------------------------------------------------- Changes (by ross): * status: new => closed * resolution: => invalid Comment: That is to be expected: factorial 35 is to big to fit in a Float. You'd get up to 170 if you used Double instead (and old versions of Hugs used the C double type internally for both types). But a better approach would be to use another scanl to build the terms of the series incrementally as Floats or Doubles, before the scanl you're using to get partial sums. -- Ticket URL: http://hackage.haskell.org/trac/hugs/ticket/82#comment:1 Hugs http://www.haskell.org/hugs/ Hugs 98, an interpreter for Haskell
participants (1)
-
Hugs