什麼樣的型別系統可以支援接收型別作為引數,值作為返回值的函式?

時間 2021-05-31 01:40:16

1樓:藥罐子千里冰封

自問自答:一年後終於想起並解決了這個問題。只要通過反射操縱一下 type checking monad 去推導表示式的型別,數一下 Maybe 的數量就好了:

joinMaybe : → Maybe (Maybe A) → Maybe A

joinMaybe (just (just x)) = just x

joinMaybe _ = nothing

countMaybe : Term →

countMaybe (def (quote Maybe) (_ ∷ arg x asuc $ countMaybe a

countMaybe t = 0

generateJojo : Term → → Term

generateJojo x zero = x

generateJojo x (suc zero) = x

generateJojo x (suc n) = def (quote joinMaybe) (arg defaultArg (generateJojo x n) ∷ )

macro

jojo : Term → Term → TC

jojo t hole = inferType t >>= nromalise >>= (unify hole generateJojo t countMaybe)

在 CW 出題了:https://www.

ENTJ型別的女生是什麼樣的?

正是在下 過不好閒的日子,過不好沒有目標的日子 喜歡忙碌和拼搏,並且為此感到快樂 有點冷血,很多時候共情很低 暫時做不到已識天地廣仍憐草木青,特別是在拼搏的時候吧,只會看比自己強的看不到比自己弱的人 喜歡同時做好幾件事情,就享受把一段時間怎麼拆分好分配給每件事情並且每件事情都幹好了的快感,雖然很累有...

什麼樣的家長在支援豫章書院?

酸奶口味 家庭教育失敗,在換一種說法就是不會教育孩子的爸媽!家庭有一方比較強勢,不聽孩子的心裡話,家長感覺孩子很叛逆,管不了,過早談戀愛,這就是家長為什麼支援豫章書院的原因 07年的時候四叔家的孩子我表弟被送進去類似的 戒網癮 學校了,因為被抓到一次去網咖 13歲左右 在裡面呆了四個月。再見到他感覺...

從小接收批評式教育長大的孩子會有什麼樣的表現?

寶貝神盾局 如果從小過多地接受批評和打擊或否定,一般長大後會出現兩種極端。一是如你所說比較自卑,什麼事都是怕,不敢嘗試,害怕失敗。另乙個是自負,你說我不行,我偏就認為我行。以上都是不能客觀正確評估自己的實際能力。 yyds 會形成迴避型依戀和他主人格。重大事情,比如結婚,本來本人對對方毫無感情,相處...