首页 > 解决方案 > % 在 Haskell 中做了什么?

问题描述

我习惯于在其他语言中使用 % 来表示“模”。在 Haskell 中,我们必须使用mod x yor x `mod` y。那么,这个符号在 Haskell 中是用来做什么的呢?

标签: haskellmodulo

解决方案


快速浏览一下Hoogle,您可以看到这%是一个定义为的中缀函数

(%) :: Integral a => a -> a -> Ratio a

你可以猜到它是Data.Ratio库的一部分,主要处理比率(即:分数)。它的代码是

x % y = reduce (x * signum y) (abs y)

因此给定两个积分 (x,y) ,它返回一个不可约分数 x/y


推荐阅读