From: Yukihiro Matsumoto Date: 2007-11-24T23:40:00+09:00 Subject: Re: retry semantics changed Hi, In message "Re: retry semantics changed" on Sat, 24 Nov 2007 22:08:50 +0900, Charles Oliver Nutter writes: |Yukihiro Matsumoto wrote: |> But how about retry being inside of the block? | |In the simple case, it's ok as far as I can tell, since it's being |explicitly used: |However there are implicit cases that make it just as dangerous: | |CODE: | |public |def go(x, y = (print :c; 1)) | p = proc { retry } | (print :d; 1).times &p |end |(print :a; self).go((print :b; self)) | |OUTPUT: | |abcdddddddddd... Hmm, it's implicit and weird, I admit. But is it dangerous? When you write weird script and get weird output, it's rather natural, right? matz.