title: Haskell - span elem: evaluation
body: <p>I would like to know how haskell evauates the following expression.</p>
  
  <pre><code>span (`elem` ['A'..'Z']) "BOBsidneyMORGANeddy"
  </code></pre>
  
  <p>The result is</p>
  
  <pre><code>("BOB","sidneyMORGANeddy")
  </code></pre>
  
  <p>Could anyone explain me the evaluation process? Because I can't tell why it is split as above.</p>