我正在调用一些繁琐的函数,但参数将在运行时确定。我编写了一个简单的函数来保持代码DRY,但给它命名是不必要的。我没有在其他地方使用此函数。
我尝试以Scheme的方式实现它,但是会出现void-function
错误:
(let ((do-work (lambda (x y z)
(do-x x)
(do-y y)
;; etc
)))
(cond (test-1 (do-work 'a 'b 'c))
(test-2 (do-work 'i 'j 'k))))
我可以把所有内容都放进一个apply
中(例如:(apply (lambda ...) (cond ...))
),但那样不太容易阅读。有更好的办法吗?