2014-11-23 33 views

回答

6

a and b must have kind *,也就是說它們不能是需要參數的類型構造函數。所以他們可能是Integer,(c -> d)Maybe String,但不是(->),(a ->)Maybe

a不能是一個函數,即(c -> d),可以嗎?

是的,它可以。它可以是任何可能的種類*

+0

嗯,所以當使用單詞'type'時,它暗示有''''''''''''''? – 2014-11-23 16:59:25

+0

@KevinMeredith對我而言,這在技術上可能不夠正確。我改變了我的措辭,以便更清楚。 – sepp2k 2014-11-23 17:16:37

+1

有關'*'類型的解釋,請參見[本答案](http://stackoverflow.com/a/22807963/1186208)或[GHC 7.4.2文檔的此部分](https://下載.haskell.org /〜GHC/7.4.2 /文檔/ HTML/users_guide /種,多態性和-promotion.html)。 (當前的文檔似乎已經放棄了最初的討論。)我隨便把'*'看作帶*值*的類型(當然包括函數值),但這可能不是很正確。 – 2014-11-23 17:18:25