【发布时间】:2020-07-28 23:06:36
【问题描述】:
我正在运行以下代码:
(define (myignore x)
0
)
(define (myinterpreter mylist)
(evaluate mylist)
)
(define (evaluate mylist)
(if (eqv? (car mylist) 'prog)
(evaluate (cdr mylist))
(display (integer? (car mylist)))
(if (integer? (car mylist))
(display "YESSS")
)
)
(if (eqv? (car mylist) 'myignore)
(myignore (cdr mylist))
)
)
(myinterpreter '(prog 5))
我想知道为什么包含 (display ("YESSS")) 的行没有运行,尽管 (display (integer? (car mylist))) 在行运行之前等于 true?
【问题讨论】:
-
你用的是什么Scheme方言?
-
在这个站点上运行的是repl.it/languages/scheme。我相信scheme48?
-
上面写着 BiwaScheme。
标签: functional-programming scheme lisp