首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >球拍中出现一个奇怪的错误:“一系列内部定义后没有表达式”

球拍中出现一个奇怪的错误:“一系列内部定义后没有表达式”
EN

Stack Overflow用户
提问于 2013-05-05 04:33:35
回答 2查看 5.5K关注 0票数 1

我有以下代码:

代码语言:javascript
运行
复制
(define (play-loop strat0 strat1 strat2 game-limit)
 (define (play-loop-iter strat0 strat1 strat2 count history0 history1 history2 limit)
  (cond ((= count limit) (print-out-results history0 history1 history2 limit))
      (else (let ((result0 (strat0 history0 history1 history2))
                  (result1 (strat1 history0 history1 history2)
                  (result2 (strat2 history0 history1 history2)))
              (play-loop-iter strat0 strat1 strat2 (+ 1 count)
                              (extend-history result0 history0)
                              (extend-history result1 history1)
                              (extend-history result2 history2)
                              limit)))))
 (play-loop-iter strat0 strat1 strat2 0 '() '() '() game-limit)))

当我在球拍中运行它时,它给出了以下错误:

begin (可能隐式):中的内部定义序列后没有表达式:...

我看起来一切正常,但有一个错误,看我很有趣。

有什么问题吗?

谢谢..。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-05-05 04:37:52

它告诉您,您的play-loop函数只包含play-loop-iter函数的定义,其主体中没有其他表达式。

看起来您希望对play-loop-iter的调用成为play-loop主体的一部分,但它不是-它是play-loop-iter主体的一部分。检查括号。

票数 5
EN

Stack Overflow用户

发布于 2013-05-05 04:35:28

你可能在(result1 (strat1 history0 history1 history2)之后遗漏了一个帕伦

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16378703

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档