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)))))