# Is there a better way to write { yield }

**URL:** <https://www.ruby-forum.com/t/is-there-a-better-way-to-write-yield/138200>\
**Category:** Ruby\
**Created:** [May 21, 2008, 12:58am UTC](https://www.ruby-forum.com/t/is-there-a-better-way-to-write-yield/138200 "2008-05-21T00:58:23Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![stephanwehner](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/0ea827/32.png) [@stephanwehner](https://www.ruby-forum.com/u/stephanwehner)\
**Post date:** [May 21, 2008, 12:58am UTC](https://www.ruby-forum.com/t/is-there-a-better-way-to-write-yield/138200/1 "2008-05-21T00:58:23Z")

</div>

Is there a better way to write something like

def meth(a,b,c)  
:  
:  
other\_meth(d) { yield }  
:  
:  
end

That { yield } has some redundancy.

Thanks

Stephan

---

<div class="post-metadata">

**Author:** ![stephanwehner](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/0ea827/32.png) [@stephanwehner](https://www.ruby-forum.com/u/stephanwehner)\
**Post date:** [May 21, 2008, 1:40am UTC](https://www.ruby-forum.com/t/is-there-a-better-way-to-write-yield/138200/2 "2008-05-21T01:40:16Z")

</div>

On May 20, 2008, at 4:58 PM, Stephan W. wrote:

> That { yield } has some redundancy.
> 
> Thanks
> 
> ## Stephan
> 
> Posted via [http://www.ruby-forum.com/](http://www.ruby-forum.com/).

def meth(\*a, &b)  
other\_method(\*a, &b)  
end

a @ [http://codeforpeople.com/](http://codeforpeople.com/)

---

<div class="post-metadata">

**Author:** ![stephanwehner](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/s/0ea827/32.png) [@stephanwehner](https://www.ruby-forum.com/u/stephanwehner)\
**Post date:** [May 21, 2008, 5:29am UTC](https://www.ruby-forum.com/t/is-there-a-better-way-to-write-yield/138200/3 "2008-05-21T05:29:45Z")

</div>

Stephan W. wrote:

> That { yield } has some redundancy.  
> That form has the advantage, IIUC, that no Proc object is created, so  
> it’s a little more efficient. (Search the archives for block versus  
> proc.) Also, Rdoc can pick up the yield (and its arg) automatically.
