我認爲我得到了錯誤的術語 - 讓我知道我應該用什麼來代替下面的內容。PureScript「內部」量化類型
在PureScript by Example, section 8.17 Mutable State,還有的runST
類型的討論:
runST :: forall a eff. (forall h. Eff (st :: ST h | eff) a) -> Eff eff a
這裏需要注意的一點是,區域類型h的括號內量化的功能箭頭左。這意味着無論我們傳遞給runST的任何行動都必須與任何地區一起工作。
我理解的最終目標,但有人可以澄清從類型角度來看,這說法,這如何被限制如同上面?
如果可能,是否可以在較簡單的類型上顯示差異,例如:有什麼區別:
f1 :: forall i o. Array i -> Array o
f2 :: forall o. (forall i. Array i) -> Array o
我認爲一個簡短的例子會有所幫助。