【发布时间】:2011-07-19 06:25:01
【问题描述】:
我尝试使用 ctrl-c 然后 :a
但在这里不起作用。
我的代码是这样的:
(defun game-repl()
(loop (print (eval (read)))))
然后我运行
(game-repl())
look()
【问题讨论】:
-
游戏循环通常会有一个变量
isDone或isNotDone,并且会基于它循环,例如(while is-not-done ... )。只需将is-not-done设置为false,循环将在下一次迭代中中断。 -
谢谢@Merlyn,但我的问题是如何打破这个循环回到我的 Lisp 编程环境,即 emacs。
-
因此为什么是评论而不是答案 :) 但它会解决问题...只需在您的 REPL 中设置
is-not-done。但是是的,我可以看到您正在寻找编辑器命令,而不是可编程解决方案。 -
谢谢梅林。我懂了。我搜索了一些来源。你说的对。我需要“告诉” lisp 什么时候出去。 ;)
-
(Game-repl ())应该发出错误信号,因为参数数量无效(期望没有,但得到一个)。Look很可能不是已定义的变量。()计算结果为nil。