我在哪里可以找到fromRealFrac
功能?根据the gentle intro该函数应该存在,并从一些谷歌搜索,我认为它应该在前奏 - 但ghci抱怨说,它不在范围内。哪里来自RealFrac?
我暂时使用fromRational . toRational
,因为按照温柔的介绍,fromRealFrac
是如何定义的。
我在哪里可以找到fromRealFrac
功能?根据the gentle intro该函数应该存在,并从一些谷歌搜索,我认为它应该在前奏 - 但ghci抱怨说,它不在范围内。哪里来自RealFrac?
我暂时使用fromRational . toRational
,因为按照温柔的介绍,fromRealFrac
是如何定义的。
以前称为“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 e报告回购。
我想知道为什么没有人会在官方的haskell网站上修复“温和的介绍”。 – 2017-01-04 00:27:59
根据Hoogle,标准库中有no function named fromRealFrac
。
也许这是温柔介绍的作者自己编写的一个函数?
查看链接后,他们肯定会建议它在图书馆的某个地方......我也很困惑。
It appears该函数在GHC Prelude中被称为realToFrac
。
我的猜测是这个函数被(重新)移动后哈斯克尔98. – 2013-03-11 03:59:50
这很可能是一个温和的介绍错字。你想要'realToFrac'。 – augustss 2013-03-11 09:35:04