Как можно использовать функцию Map схемы для передачи двух списков в одну функцию?

У меня вопрос по Схеме. Я новичок в этом языке, и мой вопрос довольно общий:

Можно ли без определения рекурсивной функции использовать Map (или что-то подобное) для подачи двух списков параметров в функцию, создавая один новый список из выходных данных?

Например, предположим, что у меня было:

(define lst1 (list 1 2 3 4 5))
(define lst2 (list 2 4 6 8 10))

Затем я хотел каким-то образом сопоставить функцию +, предоставляя каждый список в качестве параметра, чтобы на выходе был новый список, lst3:

>lst3
(3 6 9 12 15)

Чтобы сформулировать вопрос несколько более кратко: как можно наиболее эффективно отобразить бинарную функцию, когда оба параметра являются списками?

Спасибо за любую помощь!


person cogitoergopwn    schedule 02.11.2011    source источник


Ответы (1)


(map + lst1 lst2)

MAP может принимать любое количество списков.

Пример:

(map + lst1 lst2 lst1) => (4 8 12 16 20)
person leppie    schedule 02.11.2011
comment
Дох, я чувствую себя действительно глупо! Спасибо, что нашли время ответить. - person cogitoergopwn; 02.11.2011