我在哪里可以找到fromRealFrac
功能?根据{{3}},该函数应该存在,并且从谷歌搜索一下,我收集它应该在Prelude中 - 但是ghci抱怨它不在范围内。
我目前正在使用fromRational . toRational
,因为温柔的介绍是fromRealFrac
的定义方式。
答案 0 :(得分:19)
以前称为“fromRealFrac”的函数在Haskell 98报告中被重命名为“realToFrac”。
在我们找到的Haskell 1.4 Prelude
fromRealFrac :: (RealFrac a, Fractional b) => a -> b
fromRealFrac = fromRational . toRational
然而,Haskell 98被称为
realToFrac :: (Real a, Fractional b) => a -> b
realToFrac = fromRational . toRational
此更改列在Haskell 98 Report Errata:
中[Apr 2001] Page 84, Section 6.4, Fig 7; and bottom of page 86, Section 6.4.6.
fromRealFrac :: (RealFrac a, Fractional b) => a -> b
should be replaced by
realToFrac :: (Real a, Fractional b) => a -> b
我能找到的最接近的提交是报告库中的this。
答案 1 :(得分:5)
It appears此功能在GHC Prelude中被称为realToFrac
。
答案 2 :(得分:2)
根据Hoogle,标准库中有no function named fromRealFrac
。 也许是温柔介绍的作者自己组成的一个功能?看完这个链接后,他们肯定会建议它在某个地方的图书馆......我也很困惑。 / p>