小编war*_*rty的帖子

函数elem没有反引号不工作

我必须在Haskell中创建一个布尔函数,它接收一个单词(String)和一个字符列表.该函数必须验证列表中的所有字符都包含在字符串中.我做了一些研究,发现了这些功能all,elem可能会有所帮助.

例:

word = "hello"
list = ['h','o','e']
Run Code Online (Sandbox Code Playgroud)

我的代码看起来像这样:

allCharBelong word list = all (`elem` word) list
Run Code Online (Sandbox Code Playgroud)

我做了一些测试,它完美地工作(如果你想仔细检查那将是不错的).

我的问题是:为什么当我在elem中取出反引号时,该功能不起作用?

工作: allCharBelong word list = all (`elem` word) list

不工作: allCharBelong word list = all (elem word) list

haskell functional-programming

2
推荐指数
1
解决办法
332
查看次数

是否定义了此函数的类型

我是Haskell的新手,我创建了一个高阶函数:

forAll f ls ls2 = all (`f` ls) ls2

我需要指定类型,但我对函数f的类型有疑问:

GHCi说它是:

forAll :: (a -> t -> Bool) -> t -> [a] -> Bool

但不应该是这样的吗?

forAll :: (a -> t) -> t -> [a] -> Bool

谢谢.

haskell functional-programming

0
推荐指数
1
解决办法
120
查看次数

标签 统计

functional-programming ×2

haskell ×2