title: Haskell - lambda expression
body: <p>I am trying to understand what's useful and how to actually use lambda expression in Haskell.
  I don't really understand the advantage of using lambda expression over the convention way of defining functions.
  For example, I usually do the following:</p>
  
  <pre><code>let add x y = x+y
  </code></pre>
  
  <p>and I can simply call </p>
  
  <pre><code>add 5 6
  </code></pre>
  
  <p>and get the result of 11
  I know I can also do the following:</p>
  
  <pre><code>let add = \x-&gt;(\y-&gt; x+y)
  </code></pre>
  
  <p>and get the same result.
  But like I mentioned before, I don't understand the purpose of using lambda expression.
  Also, I typed the following code (a nameless function?) into the prelude and it gave me an error message. </p>
  
  <pre><code>let \x -&gt; (\y-&gt;x+y)
  
  parse error (possibly incorrect indentation or mismatched backets)
  </code></pre>
  
  <p>Thank you in advance!</p>