title: Contradictory Behaviour of Lambda Functions
body: <p>Using the following definitions:</p>
  
  <pre><code>lenDigits n = length (show n)
  factorial n = product [1..n]
  </code></pre>
  
  <p>I evaluate the following </p>
  
  <pre><code>Prelude&gt; ((lenDigits . factorial) 199) &lt;= 199
  False
  Prelude&gt; (\i -&gt; ((lenDigits . factorial) i) &lt;= i) 199
  True
  </code></pre>
  
  <p>What is the reason for such behaviour? As I see it, the first expression is just the same as the second expression with the lambdas reduced.</p>