Andy Wingo <wi...@pobox.com> skribis: > On Wed 18 Jan 2012 23:21, l...@gnu.org (Ludovic Courtès) writes: > >> Andy Wingo <wi...@pobox.com> skribis: >> >>> On Wed 18 Jan 2012 22:18, l...@gnu.org (Ludovic Courtès) writes: >>> >>>> (('apply (f args)) >>>> (apply (eval f env) (eval args env))) >>> >>> This is in primitive-eval (and here, `eval' is locally bound). Mark is >>> talking about R5RS `eval' (`scm_eval'). >> >> OK, but ‘scm_eval’ is not recursive, so no wonder it’s not >> tail-recursive. :-) >> >> (I’m confident I’m missing something, but I just fail to see what. ;-)) > > Hee hee :) The point is that this should loop indefinitely: > > (define (loop) > (eval '(loop) (current-module))) > (loop)
OK, got it. TBH, I’d be happy to document the limitation and live with it, especially since it’s not a regression. Thanks, Ludo’.