Emacs Lisp unterstützt syntaktisch keine Nicht-Null-Standardeinstellungen für optionale Parameter. Was ist die empfohlene Redewendung für die Angabe dieser Parameter?
Um meinen Standpunkt zu verdeutlichen, hier ist eine übermäßig explizite Möglichkeit, dies zu tun.
(defun command (a &optional supplied-b)
(let ((b (or supplied-b default-b)))
(command-body a b)))
Was ist der empfohlene Stil?
setq
in einer „reinen“ Booleschen Form wie zu verwendenor
. Meiner Meinung nachwhen
ist dies hier definitiv angemessener, aber im Allgemeinenlet
ist es der Ausdruck der Wahl, lokale Bindungen herzustellen oder zu ändern. IOW, der ursprüngliche Code sieht für mich viel besser aus.