state monad 為什麼wrap的是乙個 Function ?

時間 2021-05-31 23:00:52

1樓:鄒暢

如果 state monad 不 wrap 乙個 function,那麼它就會儲存乙個具體的 state。組合兩個 state monad 的時候到底按誰的 state 為準呢?所以 state monad 不能儲存具體的 state,而是儲存 state 的變化方法,讓前乙個 state 傳進來然後在這個基礎上改變 state。

這樣來看,Maybe monad 其實就是 state monad 的乙個特例。兩個 Maybe monad 組合的時候,你已經知道該怎麼處理它們了,處理的策略就是當第乙個 monad 為 nothing 的時候,返回 nothing,不然就把第乙個 monad 的值傳給第二個 monad。這個策略確定以後,Maybe monad 就不需要像 state monad 那樣 wrap 乙個 function 了。

2樓:馮東

因為這裡的 state 並不是乙個變數,而是乙個初始值的變化過程。等 monad 計算完成之後,你要給這個變化過程乙個初始值,才能得到 final state。所以這個「變化過程」是個函式。

為什麼為什麼為什麼為什麼vn上單 沒有隊友

你怎麼這麼可愛丶 嘿嘿我也玩過一段時間 首先熟練度要很高 要有一打二的準備,對面打野肯定搞你 可以的話叫打野來反蹲畢竟你肯定能壓著對面打打野不來的話就做好視野 破敗出來就隨便打了 可以帶傳送傳去下路收人頭完美 似此星塵非昨夜 選了VN上單不就注定是被軍訓的結局嗎?誠然VN上單前期可以壓制大多數戰士上...

為什麼我長得矮?為什麼 為什麼?

大地 接受現實就好了,接受後就會好很多。人總還是對自己有不滿意的,你嫌棄自己太矮,那身高很高的,還有嫌棄自己太高的,沒用。徒增煩惱!有個抖音是150,你可以看下,就是個小個子,但是她還挺坦然接受現實,並且利用這個獲得了收益。所以接受現實 易仙 為什麼系統給我分配這個問題,是我158的身高不夠雄壯麼!...

為什麼貓咪這麼可愛?為什麼?為什麼?

邦4687587黜Q 一.大眼睛 如果你是乙個愛貓的人,相信你一定見過很多不同的貓咪。仔細回想一下,你會發現它們都有一雙迷人的大眼睛。貓咪眼睛的大小與它的臉部表面積達到了乙個很完美的比例,我們看上去會感覺很可愛,尤其是女孩子看到了,會被它迷住的哦!我有時候就會用拇指和食指抓住它的耳朵,手掌托住它的腦...