查找有关中缀运算符的信息

因为在 Haskell 中中缀很常见,所以你经常需要查找它们的签名等等。幸运的是,这和任何其他函数一样简单:

  • Haskell 搜索引擎 HayooHoogle 可以用于中缀运算符,就像在某些库中定义的任何其他东西一样。

  • 在 GHCi 或 IHaskell 中,你可以使用:i:ti nfo 和 t ype)指令来了解运算符的基本属性。例如,

    Prelude> :i +
    class Num a where
      (+) :: a -> a -> a
      ...
          -- Defined in ‘GHC.Num’
    infixl 6 +
    Prelude> :i ^^
    (^^) :: (Fractional a, Integral b) => a -> b -> a
          -- Defined in ‘GHC.Real’
    infixr 8 ^^
    

    这告诉我^^+绑定得更紧密,两者都将数值类型作为它们的元素,但是^^要求指数是整数而基数是分数。
    较简洁的:t 要求操作符在括号中,如

    Prelude> :t (==)
    (==) :: Eq a => a -> a -> Bool