2 ms·
(define-syntax nest (syntax-rules () ((nest x) x) ((nest x ... (y ...) z) (nest x ... (y ... z))))) That one is quadratic according to th
by Johnny_Brahms 9y ago
(define-syntax nest
(syntax-rules ()
((nest x) x)
((nest x ... (y ...) z) (nest x ... (y ... z)))))
That one is quadratic according to the author, but for 1050 expands of a nest with 6 levels it is less than 10% slower. Whereas in chez scheme, the difference is even less (for more than 2000 expansions)
Edit: Decided to stress test the chez scheme macro expader. for 30000 expansions, it was under 1s using the syntax-case version. I'd say that is very much good enough.