> So reduce can be obviated by just letting the function take variable args too.
In Common Lisp the max number of arguments can be small.
$ abcl
Armed Bear Common Lisp 1.8.0
Java 11.0.19 Ubuntu
OpenJDK 64-Bit Server VM
Low-level initialization completed in 0.304 seconds.
Startup completed in 1.501 seconds.
Type ":help" for a list of available commands.
CL-USER(1): CALL-ARGUMENTS-LIMIT
50