title: How does the method reference operator .: work?
body: <p>This question is not very useful because <a href="https://bugs.ruby-lang.org/issues/16275" rel="nofollow noreferrer">the method reference operator was removed from Ruby 2.7.0</a> before release. This question is left up for historical reasons.</p>
  <p><a href="https://www.ruby-lang.org/en/news/2019/05/30/ruby-2-7-0-preview1-released/" rel="nofollow noreferrer">Ruby 2.7.0-preview1</a> has introduced the method reference operator <code>.:</code> as an experimental feature. (more <a href="https://bugs.ruby-lang.org/issues/12125" rel="nofollow noreferrer">here</a> and <a href="https://bugs.ruby-lang.org/issues/13581" rel="nofollow noreferrer">here</a>).</p>
  <p>There are some abstract examples available for how to use this new operator:</p>
  <pre><code>method = 42.:to_s
   =&gt; #&lt;Method: Integer#to_s&gt;
  method.receiver
   =&gt; 42
  method.name
   =&gt; :to_s
  method.call
   =&gt; &quot;42&quot;
  </code></pre>
  <p>and:</p>
  <pre><code>method = File.:read
   =&gt; #&lt;Method: File.read&gt;
  method.call('/Users/foo/.zshrc')
   =&gt; &quot;export ZSH=$HOME/.zsh&quot;
  </code></pre>
  <p>These abstract examples are not representative of real-world implementations. What is the plain-English explanation of the purpose and use of the method reference operator, defined in terms of practical and real-world examples?</p>