> I have glanced through though, maybe I am missing it. Don't just glance. Give it the attention that it and your understanding both deserve. If that CL doc didn't help you then I really suggest you sit down, take it slowly, and reread carefully. Both the Elisp doc and the CL doc about this are clear and complete, I think. I suggest with respect that you're maybe just not paying enough attention. Don't be in a hurry. The info is there; just give it a chance - and another read. The CL link is not documentation, it is an essay, entire novel :-). But interestingly, that do not touch on that case either . I have glanced through though, maybe I am missing it. > > I don't read it says both c and d are required > > when &rest is also used. > > You just have to squint the other way .-) > They are not "required". They are provided -- in the call. It's just > that c is served first, d next, and all the rest (if any) goes to e: If someone finds the Elisp doc about lambda lists, I recommend consulting the Common Lisp doc (CLTL2) about it. Common Lisp lambda lists allow more stuff (&keys, &aux etc.), but for the things that Elisp has (&optional, &rest) the behavior is the same. The language in CLTL2 is quite precise. It too merits being read carefully, but I think it spells things out quite clearly. This is the section about lambda lists, which covers &optional and &rest: HYPERLINK "https://urldefense.com/v3/__https:/www.cs.cmu.edu/Groups/AI/html/cltl/clm/node64.html*SECTION00922000000000000000__;Iw!!GqivPVa7Brio!PxyUBvVt3a4Eze6ZtyLlEC6A236XgfttZKnn-7gkT1H6p1FBymyit-C_eQf2-wZH$"https://www.cs.cmu.edu/Groups/AI/html/cltl/clm/node64.html#SECTION00922000000000000000 With that, plus the Elisp doc, plus this thread, I think things will become more clear. HTH.