相关疑难解决方法(0)

如何在GHCi中启用语言扩展?

我正试图XRankNTypes在GHCi中启用.我该怎么做呢?

haskell ghci language-extension

98
推荐指数
1
解决办法
1万
查看次数

树的Haskell地图

我的树是由

data Tree a = Leaf a | Node (Tree a) (Tree a) 
        deriving (Show)
Run Code Online (Sandbox Code Playgroud)

我还宣布了一个测试树.

myTree = Node (Node (Leaf 1) (Leaf 2)) (Leaf 3)
Run Code Online (Sandbox Code Playgroud)

我想要做的是创建一个函数maptree f,它将作用于Leaf.更具体地说f x = x +1,

然后maptree f myTree会回来

Node (Node (Leaf 2) (Leaf 3)) (Leaf 4)
Run Code Online (Sandbox Code Playgroud)

我的解决方案是

maptree f (Leaf a)= Leaf (f a)
maptree f (Node xl xr ) = Node (maptree xl) (maptree xr)
Run Code Online (Sandbox Code Playgroud)

但它会返回以下错误

Couldn't match expected type `Tree a'
       against inferred type `Tree t -> …
Run Code Online (Sandbox Code Playgroud)

tree haskell

6
推荐指数
4
解决办法
5957
查看次数

标签 统计

haskell ×2

ghci ×1

language-extension ×1

tree ×1