在 haskell 中编程时,该:type
命令很有帮助。通过了解函数的数量和签名,我们可以快速理解某些构造的目的。例如:
Prelude Control.Monad.Reader> :type (lift .)
(lift .) :: (Monad m, MonadTrans t) => (a -> m a1) -> a -> t m a1
clojure 中是否有等价物可以知道函数的元数(类型在 clojure 中不相关)?
例如,在我意识到 (-) 和 (*) 具有可变参数之前,我乍一看并不容易理解下面的组合:
(comp - *)