On 10/29/2017 11:13 AM, bartc wrote:
(What the OP wants was also proposed a few weeks back in comp.lang.c. But that was only within nested functions, so if H is inside G, and G is inside F, then a 'returnall' from H would return directly directly from F. Apparently Lisp allows this...)
Well, not directly, but it can be simulated with the condition system (equivalent to try/except) or with throw/catch, which is similar but doesn't use exceptions.
But my point was that in Lisp you don't need to do this, because you can write a macro that expands into a return *in place*, without calling a separate function, and this eliminates the problem entirely. Since Python doesn't have macros I was looking for the next-best solution, but there doesn't seem to be one. Oh, well...
Thanks, Alberto -- E-mail address: ((lambda (s a b c) (map 'string #'code-char (mapcar (lambda (v) (setq s (+ a (mod (+ s v (- a)) b)))) (map 'list (lambda (v) (- (char-code v) c)) " 1`-THUZ&+Wh1")))) 97 46 73 32) -- https://mail.python.org/mailman/listinfo/python-list