- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
为什么atan2
是RealFloat
类的一部分,而不是(有点奇怪的名字)Floating
类的一部分?
我不明白它在逻辑上如何依赖于Real
(我理解这是一类非抽象的数字,因为它们可以转换为一些有理
自身的近似)。
我也不明白为什么它与 RealFloat
的任何其他成员有关,这些成员与打包和解包指数/尾数表示有关。
(潜在的接近选民:我不仅仅是在咆哮 Haskell 数字塔。我真的认为这个问题有一个答案,但我只是把注意力集中在错误的地方来看到它。)
最佳答案
我想这可能来自如何处理复数。 atan2
函数旨在使用 (x, y)
坐标,但这不适用于复数值,因为两个复数值将代表相同数量的信息为 4 个实数值。 atan2
对于复数没有任何意义,但 atan
确实如此。由于 atan2
对于任何处理角度的程序来说都是一个非常重要的函数,因此它在 RealFloat
中的位置很可能是出于实用性而不是纯数学。
关于haskell - 为什么Haskell prelude的atan2函数定义在RealFloat类中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29290241/
在 向你学习 Haskell 书,有一个关于计算你的BMI的例子。 bmiTell :: (RealFloat a) => a -> a -> String bmiTell weight height
在 GHCi 中,我们发现以下内容: import Data.Complex :t 2 * (3 :+ 4) 2 * (3 :+ 4) :: RealFloat a => Complex a :
我试图弄清楚为什么它不能编译 yell :: (Floating a) => a -> [Char] yell x | x > 10.0 = "Yelling" | otherwise
我是一名优秀的程序员,十分优秀!