title: Why not pipe list of file names into cat?
body: <p>What is the design rationale that <code>cat</code> doesn't take list of file names from pipe input? Why did the designers choose that the following does not work?</p>
  
  <pre><code>ls *.txt | cat
  </code></pre>
  
  <p>Instead of this, they chose that we need to pass the file names as argument to <code>cat</code> as:</p>
  
  <pre><code>ls *.txt | xargs cat
  </code></pre>