title: returning a method reference wrapped in a lambda
body: <p>Please help me understand WHY the following works.</p>
  
  <pre><code>class Dog
    def bark
      "woof"
    end
  end
  
  bark_string = Dog.new.bark
  puts bark_string                   # "woof" - a string at this point
  ref_to_bark = -&gt; { bark_string }   # the string a moment ago is now the method again
  ref_to_bark.call                   # "woof"
  </code></pre>
  
  <p><strong>Why does wrapping a reference to a method in a proc/lambda return a reference to the original method?</strong> It baffles me.</p>