Closed NQNStudios closed 9 months ago
One thing that would be lost is the compiler's ability to make sure all the args are there. Maybe making a specialForm on top of a makeVarArgs function would be good.
Why did I make it a special form and not a macro in the first place? Every &rest args specialForm would need to implement a specialFormMacroExpander to work with the fix for #7
Actually they wouldn't, because all arguments to a &rest function get macroExpanded.
They must be special forms because a macro returning (macro <...>)
would evaluate itself forever.
I'm gonna triage this issue because it doesn't have practical use. It could only invite bugs.
However, seems like that could break a lot of code?