关于函数参数

发布于 2022-08-15 12:44:03 字数 449 浏览 12 评论 3

readUTCDate :: String -> CalendarTime
readUTCDate = readDate 0

readDate :: Int -> String -> CalendarTime
readDate tz d =
             case parseDate tz d of
             Left e -> error e
             Right ct -> ct

readDate明明有两个参数, 为何能用一个参数调用 (readDate 0) ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

春夜浅 2022-08-26 13:54:19

原帖由 sw2wolf 于 2009-5-12 08:39 发表
这就是currying ?

嗯。

另外,Haskell 的函数都是只有一个参数。

遮云壑 2022-08-24 09:31:27

这就是currying ?

谢谢!

櫻之舞 2022-08-22 07:13:06

若 f 的签名为 a->b->c

x 类型是 a,则 f x 是一个类型为 b-> c 的函数。

readUTCDate :: String -> CalendarTime
readUTCDate = readDate 0

readDate :: Int -> String -> CalendarTime

readData 签名为 Int -> String -> CalendarTime,所以 readDate 0 应该是 String->CalendarTime,正好跟 readUTCDate 的签名是一致的。

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文