title: Haskell: accessing lists from back
body: <p>Today I started learning Haskell. I'm kind of new with functional languages, and I'm enjoying Haskell a lot.</p>
  
  <p>However I've got a question about its design which is bugging me: from what I understood so far it looks like accessing an element to the back of a list is a lot more complicated that accessing the element to the front (something like <code>xs:x</code> where <code>xs::[a]</code> and <code>x::a</code> doesn't seem to be possible).</p>
  
  <p>(From what I understood) it's possible to append a list to another one (<code>xs++[a]</code>), but it'll cost more at run time (it requires to traverse the whole list) and it cannot be used for pattern matching.</p>
  
  <p>Why is Haskell missing such operation?</p>