下面看起来不起作用,但我不太清楚为什么。所有的移动板都是采用二维数组并返回一个二维数组,其余的代码都在那里。基本上我试图完成类似下面的Python:处理stdin Clojure
While True:
do stuff
if gameover:
print("Game Over!")
break
的Clojure不工作(打印一次董事会,请求输入,然后挂起)
(defn game-loop [board]
(loop [b board]
(if (game-over? b) "Game Over!"
(do (print-board b)
(recur (move-board (read-line) b))))))
您可以试着单独将'read-line'的结果分开并打印出来,看看'read-line'是否返回。另一个要检查的地方是你的“游戏结束?”功能;它是无限循环的吗? –