2 module Main(main) where
20 doubles = [ -1.2 , 0, 0.1, 0.5, 1.0, 1234.45454,
21 1.6053e4, 1.64022e12, 6.894e-4, 6.34543455634582173,
22 5342413403.40540423255]
24 ints = [ 0, 1, 255, 65513, 6029, 1024, 256, 201357245]
27 integers = [ 0, 1, 255, 65513, 6029, 1024, 256,
28 2343243543500233, 656194962055457832]
31 test_doubleToFloat :: IO ()
32 test_doubleToFloat = do
33 test_banner "doubleToFloat"
34 putStrLn (show doubles)
35 putStrLn (show $ map doubleToFloat doubles)
37 test_floatToDouble :: IO ()
38 test_floatToDouble = do
39 test_banner "doubleToFloat"
40 putStrLn (show doubles)
41 putStrLn (show $ map doubleToFloat doubles)
42 putStrLn (show $ map (floatToDouble.doubleToFloat) doubles)
48 putStrLn (showList' (map showHex ints))
49 putStrLn (show integers)
50 putStrLn (showList' (map showHex integers))
56 putStrLn (showList' (map showBin ints))
57 putStrLn (show integers)
58 putStrLn (showList' (map showBin integers))
60 showList' :: [ShowS] -> String
62 showList' (x:xs) = showChar '[' . x $ showl xs ""
64 showl [] = showChar ']'
65 showl (x:xs) = showChar ',' . x . showl xs
72 putStrLn (showList' (map showOct ints))
73 putStrLn (show integers)
74 putStrLn (showList' (map showOct integers))
77 test_banner :: String -> IO ()
79 putStrLn $ "--------------------------------"
80 putStrLn $ "--Testing " ++ tst
81 putStrLn $ "--------------------------------"