gpt4 book ai didi

Haskell:使用列表理解解析错误(可能是不正确的缩进或不匹配的括号)

转载 作者:行者123 更新时间:2023-12-04 14:14:13 24 4
gpt4 key购买 nike

我是 Haskell 的新手,正在尝试编写一个简单的列表理解并将其分配给一个变量。这是我的haskell.hs文件:

--find all multiples of 3 and 5 under 1000
multiples :: [Int]
let multiples = [x | x <- [1..1000], (x `mod` 5 == 0) || (x `mod` 3 == 0)]

然后当我尝试用 ghc haskell.hs 编译程序时我收到以下错误:
haskell.hs:12:1:
parse error (possibly incorrect indentation or mismatched brackets)

问候!

最佳答案

你有一个额外的let .它应该是:

multiples :: [Int]
multiples = [x | x <- [1..1000], (x `mod` 5 == 0) || (x `mod` 3 == 0)]

这不是 OCaml,所以你不需要 let在顶层。

这可能有点令人困惑,因为旧版本的 GHCi 需要 let用于定义名称。然而,这只是解释器的一个怪癖,现代 GHC 版本不再需要它。

关于Haskell:使用列表理解解析错误(可能是不正确的缩进或不匹配的括号),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18111212/

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