当我们有表达式时:
(fmap . fmap) function nested_functor
我希望它能翻译成类似
的东西fmap (fmap function nested_functor)
虽然令人惊讶地表现得像
fmap (fmap function) nested_functor
为什么?
答案 0 :(得分:9)
好吧,看看 <Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:drawableLeft="@drawable/video_camera"
android:drawableRight="@drawable/right_arrow"
android:text="See a Medical\nDoctor Now"/>
的定义:
(.)
所以,
(f . g) x = f (g x)
在最后添加一个额外的参数并没有真正改变方程 - 只是使它更具体。
(fmap . fmap) function = fmap (fmap function)
(N.B。功能应用程序是左关联的,因此(fmap . fmap) function nested_functor = fmap (fmap function) nested_functor
表示f x y
。)