From: Phlip Date: 2008-05-25T06:07:11+09:00 Subject: Re: lambda, ->, haskell, and so on Tammo Tjarks wrote: > a.cond_each [{|a| a%2==0}, { 'even'},{|c| "it is #{c}"}] > would be something like that possible for the parser? Is that a already an > existing idea or maybe even somewhere implemented? I suspect I just did that to enable multiple arguments for assert_yin_yang. First, get 'lambda' out of the way: def _(&block); lambda(&block); end Then, pass an arbitrary number of blocks and non-blocks in: q = 41 assert_yin_yang _{ q += 0 }, 'it broke!', _{ q == 42 } Inside the method, partition them into callables & diagnostic strings: def assert_yin_yang(*args) procks, diagnostic = args.partition{|p| p.respond_to? :call } Then, iterate an array of procks, calling each one! Is the new lambdoid operator going to replace my (dangerous) _ hack? -- Phlip