David Kastrup <d...@gnu.org> writes: > I guess my "real" problem is that I'd like to do call wrapping by writing > > (lambda ( . x) (fun . x)) > > instead of having to write > > (lambda ( . x) (apply fun x)) > > I assume eval is not supposed to try dealing with dotted lists?
The problem is that (f . (g x y)) is equivalent to (f g x y). Therefore, while Scheme could in theory support procedure calls with a dotted tail that happened to be an atom, it would do something rather different and confusing if the dotted tail was itself a procedure/macro call. Mark