pairlis
Pairlis erweitert eine Assoziationsliste um mehrere Einträge.
> (setq alist (quote ((eins 1 one) (zwei 2 two) (drei 3))))
((eins 1 one) (zwei 2 two) (drei 3))
> (pairlis (quote (vier fünf)) (quote (4 5)) alist)
((fünf 5) (vier 4) (eins 1 one) (zwei 2 two) (drei 3))
Die Funktion pairlis beruht auf if, null?, first, rest und acons:
(setq pairlis
(lambda (x y a)
(if
(null? x)
a
(acons
(first x)
(first y)
(pairlis (rest x) (rest y) a)))))
> (setq alist (quote ((eins 1 one) (zwei 2 two) (drei 3))))
((eins 1 one) (zwei 2 two) (drei 3))
> (pairlis (quote (vier fünf)) (quote (4 5)) alist)
((fünf 5) (vier 4) (eins 1 one) (zwei 2 two) (drei 3))
Die Funktion pairlis beruht auf if, null?, first, rest und acons:
(setq pairlis
(lambda (x y a)
(if
(null? x)
a
(acons
(first x)
(first y)
(pairlis (rest x) (rest y) a)))))