This afflicts 990121, at least.

  [' ', ' '..]  should generate an infinite list of spaces,
  but it actually generates an empty list.  

The expression eventually turns into

  map toEnum (numericEnumFromThenTo 32 32 255) :: [Char]

and the 990121 Prelude.hs says:

numericEnumFromThenTo n n' m = takeWhile p (numericEnumFromThen n n')
                               where p | n' >  n   = (<= m)
                                               | otherwise = (>= m)

I think the middle line should read

                               where p | n' >= n   = (<= m)

That seems to correspond more to the H98 Report sec 6.3.4 page 76.
It also gives the correct answer.

J

Reply via email to