[Hugs] #59: missing and/or erroneous output in deteministic
function run from WinHUGS cmd line!
Hugs
trac at galois.com
Sun Mar 4 11:00:55 EST 2007
#59: missing and/or erroneous output in deteministic function run from WinHUGS
cmd line!
------------------------------------------------+---------------------------
Reporter: ettinger at elmgate.eclipse.co.uk | Owner: neil
Type: defect | Status: new
Priority: critical | Milestone:
Component: winhugs | Version: 200609
Keywords: inconsistent expression evaluation |
------------------------------------------------+---------------------------
--(Output showing the bug is appended below. It isn't part of the
program).
--PLEASE run the function called bug. It will tell you to type a
--short expression at the WinHUGS command line.
--Retry the expression ten times. I do not get the same result every
time!
--Do you find the same problem? Please, please let me know either way.
--See below for printout of my "impossible" results.
--The functions os and s below will be used to demonstrate the WinHUGS
bug:
os :: Int -> Int -> Double
os i j = -22.0/7.1
s :: [[Int]] -> [[Double]]
s dat = [[
sum [ fromIntegral (dat!!i!!j) * os i x * os j y
| i <-[0..7] , j <-[0..7] ]
| x <- [0..7] ]
| y <- [0..7] ]
-- The following functions produce the bug test data:
insig :: [Int]
insig = [0 | i <-[0..7]]
signif :: [Int]
signif = [ 1 ] ++ [0 | i <-[1..7]]
i = [insig] ++ [signif | i <- [1..7]]
--For instructions on demonstrating the bug, please run the function
below:
bug = "Please type the following to demonstrate the bug: (take 4.s)i "
Main> (take 4.s)i
[[67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703],[67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703],[67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703],[67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703]]
Main> (take 4.s)i
[[67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703],[67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703],[67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703],[67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703,67.2088871255703]]
Main>
--
Ticket URL: <http://hackage.haskell.org/trac/hugs/ticket/59>
Hugs <http://www.haskell.org/hugs/>
Hugs 98, an interpreter for Haskell
More information about the Hugs-Bugs
mailing list