【发布时间】:2014-11-23 09:23:38
【问题描述】:
我有一个表示某种状态的值元组,并希望通过加法(移位)来翻译它。我的值是 (Int, [Int], Int) 的更长版本,我想要一些概念上(但不是字面意思)的东西:
shift n = ??? (+n) (id, map, id) -- simple(?)
相当于:
shift n (a, b, c) = (a+n, map (+n) b, c+n)
我很高兴使用这种显式的函数用法,但想知道是否有一个更惯用的无点版本使用 Applicative 或 Arrows 或 ...,或者它们是否最终会混淆事物。我认为无点版本更清楚地显示了操作的基本结构。
【问题讨论】:
标签: function haskell tuples apply pointfree