gpt4 book ai didi

haskell - 记录语法不合法。 haskell中的二叉树

转载 作者:行者123 更新时间:2023-12-05 08:40:51 25 4
gpt4 key购买 nike

我用记录语法的方式定义了树类型。

data Tree a = Null | Node a {lTree:: Tree a, rTree :: Tree a}

但是,当我加载它时,它显示错误:

• Record syntax is illegal here: {lTree :: Tree a, rTree :: Tree a}
• In the type ‘{lTree :: Tree a, rTree :: Tree a}’
In the definition of data constructor ‘Node’
In the data declaration for ‘Tree’
|
2 | data Tree a = Null | Node a {lTree:: Tree a, rTree :: Tree a}
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

最佳答案

a 也应该是记录语法的一部分,例如:

data Tree a = Null | Node {<b>valTree :: a</b>, lTree:: Tree a, rTree :: Tree a}

您不能将记录语法与 Haskell grammar in the Haskell '98 report 指定的位置语法“混合” :

constr  -> con [!] atype1 ... [!] atypek  (arity con = k, k>=0)
| (btype | ! atype) conop (btype | ! atype) (infix conop)
| con { fielddecl1 , ... , fielddecln } (n>=0)

关于haskell - 记录语法不合法。 haskell中的二叉树,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53042637/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com