在常见的 lisp 中有map
,它可以让你做这样的事情:
(map (lambda (x y) (/ x y)) (list 2 4 6 8 10 12) (list 1 2 3 4 5 6))
返回(2 2 2 2 2 2)
但是现在我在 ACL2 工作,没有map
. 所以在我看来,我剩下的唯一选择就是递归计算我想要的,除非有另一种更简单和/或更有效的方法。
...这正是我的问题。有没有比创建一个称为类似的递归函数更好的方法divide-two-lists
?感觉就像是基于 lisp 的语言自然应该做的事情,而不是让你专门为它创建另一个函数,这就是我问的原因。