title: I don't understand the code for avoiding DoubleRenderError
body: <p>The <a href="http://guides.rubyonrails.org/layouts_and_rendering.html" rel="nofollow">official page</a> has this snippet:</p>
  
  <pre><code>def show
    @book = Book.find(params[:id])
    if @book.special?
      render :action =&gt; "special_show" and return
    end
    render :action =&gt; "regular_show"
  end
  </code></pre>
  
  <p>Why isn't this equivalent?</p>
  
  <pre><code>def show
    @book = Book.find(params[:id])
    if @book.special?
      render :action =&gt; "special_show"
      return
    end
    render :action =&gt; "regular_show"
  end
  </code></pre>
  
  <p>Or, why isn't this used?</p>
  
  <pre><code> def show
     @book = Book.find(params[:id])
     if @book.special?
       render :action =&gt; "special_show" and return
     else
       render :action =&gt; "regular_show"
     end
   end
  </code></pre>
  
  <p>I don't understand the need for <code>render ... and return</code></p>