我想在函数中使用模糊类型a
,但它失败。Haskell中的隐形类型签名
foo :: (Read a, Show a) => IO()
foo = print =<< (readLn :: IO a)
其目的是在实际调用时获得有关给定类型签名的不同输出。
>>> foo :: Double => IO()
34 -- user input
34.0 -- output
>>> foo :: Int => IO()
34 -- user input
34 -- output
我该如何管理?
对不起,我改变了示例函数。 – user3749167 2014-08-30 16:00:01