Re: [心得] Y Combinator 與 Mutual Recursion
: 解決方法也很簡單,就頭痛醫頭腳痛醫腳,做一個 t 與 t -> a
: 同構的遞迴型別囉。
: data Fix a = Rec (Fix a -> a) -- Fix a 和 Fix a -> a 同構
這邊有個疑問
在Function 裡面定義recursive function 會有問題~
所以用Y combinator 可以搞定~
那為什麼
data 層次的recursive 定義不會遇到類似的問題?
這與haskell的什麼語言特性有關嗎?
是否有些語言可以支援這樣的宣告,有些卻不行? 若是如此,差別又在哪裡?
似乎有點鑽牛角尖了....^^" 不過我對haskell 中 data 和type 的互動的概念有點模糊
==
不過我好像隱隱約約可以回答這個問題~
這樣的語法是Type Constructor宣告
看似會有狀況,不過只要導入 Kind 的概念,則
Fix:: * -> * (這邊正確嗎?我這裡還沒有很清楚)
就能夠順利的用 W-Alogorithm 做 Unification
也就可以順利的進行 Type Inference?
==
會打問號是因為我沒辦法很肯定自己的回答是否正確~
目前正處於念了一些書可是還在相互整合的階段....
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.45.222.198
※ 編輯: SansWord 來自: 114.45.222.198 (06/04 07:39)
→
06/04 07:42, , 1F
06/04 07:42, 1F
討論串 (同標題文章)
PLT 近期熱門文章
PTT數位生活區 即時熱門文章