我正在编写一个函数来将列表的最后一个元素切换到开头:
(define last-elem
(lambda (l)
(car (reverse l))))
(define all-but-last
(lambda (l)
(reverse (cdr (reverse l)))))
(define (last-to-first x) (append (list last-elem x) (all-but-last x)))
(last-to-first '(1 2 3 4 5 6))
它没有用,我知道为什么。我忘了把括号放在周围list last-elem x
问题是,我很好奇输入错误代码的输出:
(#<Closure> (1 2 3 4 5 6) 1 2 3 4 5)
如果这是什么意思?它是怎么出现的?