Scheme 使用列表元素的操作
我有一张这样的表格,+23。其中,第一个字符是可应用于其他两个元素的数学符号。我似乎无法让它做手术。对于上一个示例,我想返回5 我试过这个:Scheme 使用列表元素的操作,scheme,racket,Scheme,Racket,我有一张这样的表格,+23。其中,第一个字符是可应用于其他两个元素的数学符号。我似乎无法让它做手术。对于上一个示例,我想返回5 我试过这个: ((car '(+ 2 3)) (cadr '(+ 2 3)) (caddr '(+ 2 3))) 但我得到了以下错误: 应用:不是一个程序 您可以尝试,但应立即进行: > (eval '(+ 1 2)) 3 如果希望对输入有更多的控制,请编写一个函数: (define solver (lambda (exp_lst)
((car '(+ 2 3)) (cadr '(+ 2 3)) (caddr '(+ 2 3)))
但我得到了以下错误:
应用:不是一个程序
您可以尝试,但应立即进行:
> (eval '(+ 1 2))
3
如果希望对输入有更多的控制,请编写一个函数:
(define solver
(lambda (exp_lst)
(let ((op (car exp_lst))
(vars (cdr exp_lst)))
#do/check stuff
(apply (eval op) vars)
)))