IMO, if you start to run up against the argument limits inherent in AutoLISP, you really need to take a step back and restructure your program; in the hundreds of thousands of lines of code I've written, I've never been troubled by the maximum number of arguments afforded by functions such as progn, cond etc.