Implication
The following:
(cond
;; If we can find an association
((assq v s) =>
;; apply this lambda to it i.e. apply f (assq v s)
(lambda (a) f a))
(else v))
Is the same as:
;; Bind a variable `a` to the result of finding the association of v in s
(let ((a (assq v s)))
(cond
;; if we can find the association `a`, apply f to it.
(a (f a))
(else v)))