haskell - 解析错误:Haskell
问题描述
我在下面收到解析错误,我不知道为什么。谢谢你的帮助!
createObject :: [a] -> object a
createObject lst =
let x = lst !! 0
let y = lst !! 1
let z = lst !! 2
in object(x,y,z)
test.hs:28:5: error: parse error on input `let'
|
28 | let y = lst !! 1
解决方案
let-in
Haskell 中的表达式只使用一个let
:
createObject :: [a] -> object a
createObject lst =
let x = lst !! 0
y = lst !! 1
z = lst !! 2
in object(x,y,z)
在一个do
块中,您确实使用了多个let
绑定,但我们不使用in
表达式:
trivialExample :: [a] -> IO (Object a)
trivialExample lst = do
let x = lst !! 0
let y = lst !! 1
let z = lst !! 2
return $ object (x,y,z)
推荐阅读
- python - 当我在 Keras 中运行 model.fit_generator 时,控制台中的这个输出是什么意思?
- css - 使用 CSS 将字体颜色更改为文章?
- docker - Traefik 在完成 tls-alpn-01 挑战后使用无链证书
- spring-boot - 连接到运行 openshift 的 Consul 服务器到在 localhost 上运行的 Consul 客户端
- azure - Azure 活动日志架构中有关 correlationId 的问题
- sql - 在 SQL 中基于层次结构合并重叠时间间隔
- python - 如何修复在 MacOS 10.7.5 上安装 PyGame 的错误代码 1?
- c# - 检索服务并在网络核心的某个任意类中使用它
- django - Django 现在在 Heroku 中使用 ASGI + WSGI 的频道
- javascript - 如何构建我的 API 调用,以及将密钥和查询放在哪里?