2018年11月3日土曜日

&optional

 elispで関数の引数を&optionalにして、指定されていないときのデフォルトをいちいち「unless」で処理を書くとか、面倒だ。commonlispなら簡単なのに。
 そういえば、「cl-defun」とか、あったっけ……。

(cl-defun foo(&optional (x 123))
  x)
foo
(foo)
123
(foo 777)
777

 おっ、いけるじゃん。