2
我試圖定義一個多態的元組列表而不使用任何導入。 我有data ListT a = [(a,String)] deriving (Eq,Ord,Read,Show)
但它一直給錯誤「無法解析的數據構造的數據/ NEWTYPE聲明:(一,字符串)]」數據定義錯誤haskell
這個錯誤是什麼意思,以及如何阻止它。 謝謝
我試圖定義一個多態的元組列表而不使用任何導入。 我有data ListT a = [(a,String)] deriving (Eq,Ord,Read,Show)
但它一直給錯誤「無法解析的數據構造的數據/ NEWTYPE聲明:(一,字符串)]」數據定義錯誤haskell
這個錯誤是什麼意思,以及如何阻止它。 謝謝
這意味着你忘了提供值構造函數的名稱。您需要更改您的代碼如下:
data ListT a = ListT [(a,String)]
順便說一句,這不是一個正確的List實現變壓器。
也許你想'輸入ListT a = [(a,String)]'? – Ryan
爲避免混淆,您可能需要選擇一個不同的名稱 - Haskell社區中使用__ListT__作爲List類型的monad變換器。 – ErikR
好的,謝謝我會改變它 –