1
我正在嘗試使用Haskell 99 Questions來學習Elm。問題7你必須定義一個嵌套的列表結構。我試過這樣:(閱讀this有些爲主)在Elm中定義一個嵌套或遞歸列表結構
type NestedList a = Node a | List (NestedList a)
myList : NestedList number
myList =
[Node 1]
但是我得到這個以下錯誤:
The type annotation is saying:
NestedList number
But I am inferring that the definition has this type:
List (NestedList number)
這是沒有道理給我。當然List (NestedList number)
是匹配Node a | List (NestedList a)
的第二面?
好的,所以在''NestedList''中定義''''時使用'List',而不是使用內建的名稱。作爲後續工作,我如何定義一個更復雜的結構,例如[1,2,[3,4,[5]],6]使用這個? –
我已經更新了我的答案,以更充分地捕捉問題#7的精神,並且它包含了複雜的嵌套列表示例。 –
太好了。我認爲需要一段時間才能沉浸在...因此,事物的NestedList或者是Node的事物,或者是NestedLists列表的NestedList!感謝您抽出時間 - 非常感謝。 –