函子们何、Functor萄焦、map? ? 接受一個「未封裝的值」,返回一個「未封裝的值」冤竹。
單子拂封、Monad、flatMap? ?接受一個「未封裝的值」鹦蠕,返回一個「封裝后的值」冒签。
適用函子、Applicative Functor钟病、apply? 接受一個「未封裝的值」萧恕,返回一個「未封裝的值」。
一 函子肠阱、Functor票唆、map:
對自己解包,然后應(yīng)用到一個閉包上屹徘,這個閉包:接受一個「未封裝的值」走趋,返回一個「未封裝的值」。
二 單子噪伊、Monad簿煌、flatMap:
對自己解包氮唯,然后應(yīng)用到一個閉包上,這個閉包:接受一個「未封裝的值」姨伟,返回一個「封裝后的值」惩琉。
三 適用函子、Applicative Functor授滓、apply:
對自己解包琳水,然后對閉包解包肆糕,解包后的閉包:接受一個「未封裝的值」般堆,返回一個「未封裝的值」。