使用Scheme的列表中的数字总和

Ibr*_*mad 3 scheme sum racket

我想在不使用递归的情况下对列表中的数字求和.我知道你可以总结这样的数字列表

(+ num1 num2 ... numN)

但是如果你有一个等于'(num1 num2 ... numN)的列表L,那么有什么方法可以使这个列表中的数字作为参数.我需要在没有递归或辅助函数的情况下执行此操作.

Chr*_*ung 11

当然,只需使用apply:

(apply + '(1 2 3 4 5 6))   ; same as (+ 1 2 3 4 5 6)
(apply + 1 2 3 '(4 5 6))   ; ditto
(apply + 1 2 3 4 5 '(6))   ; ditto
(apply + 1 2 3 4 5 6 '())  ; ditto
Run Code Online (Sandbox Code Playgroud)