title: In-place modification in piping chain
body: <p>I'm trying to modify some objects on the fly within a piping chain in <code>magrittr</code>. First try:</p>
  
  <pre><code>1:3 %&gt;% (function(x) {x[1] &lt;- 42; x})
  #[1] 42  2  3  
  </code></pre>
  
  <p>A shorter option using <code>l</code>:</p>
  
  <pre><code>1:3 %&gt;% (l(x ~ {x[1] &lt;- 42; x}))
  #[1] 42  2  3
  </code></pre>
  
  <p>I'd like to know if the same is possible without the need of defining any lambda. What's the shortest way to do that? Can I use the assignment operator <code>&lt;-</code> and placeholder <code>.</code> for that? Something similar to (note the readability)</p>
  
  <pre><code>1:3 %&gt;% {.[1] &lt;- 42} # invisible 42 instead
  </code></pre>
  
  <p>I understand that the last result is natural (the operator returns value invisibly). How can one bypass that?</p>