【发布时间】:2015-07-13 19:10:59
【问题描述】:
Double -> Float 的惯用方式是什么?
是uncurry encodeFloat . decodeFloat吗?
(我使用的是gloss,这需要浮点数)
找到这些问题的答案的推荐方法是什么?
我正在尝试this hoogle query,但答案都非常无用
(试试看 - 列表顶部有 unsafeCoerce)
【问题讨论】:
-
这将是一个痛苦的转变。
-
@Jefffrey:你是说任何这样的转换都会很痛苦,或者那个特定的实现是痛苦的?
-
我不确定,因为我记得
Float在 Haskell 中是“特殊的”,我记得被告知要像瘟疫一样避免它,但一般来说,“double”表示双精度浮点number,一般为64位,而“float”为单精度浮点数,一般为32位。如果是这种情况,您可以清楚地看到这是一个损失转换。 -
@Jefffrey : 丢失在这里无关紧要,因为它只是屏幕坐标
标签: haskell floating-point coercion