I'm new to Haskell (and functional programming in general) and was wondering how I can access a new element that I've added to a list using the cons (:) operator?
For example, using WinGHCi I create a new list and access the first element:
ghci> let a = [1,2,3]
ghci> a!!0
1
The prompt returns 1, the value of the first element, cool. Now I append a new value to the front of the list and try to access it:
ghci> 5:a
[5,1,2,3]
ghci> a!!0
1
It looks like the list items don't get re-indexed. I tried getting a negative index to work and other such things but the compiler didn't seem to approve. The tutorials I'm reading just skip over it and I couldn't find anything of use online. How do I get the value "5" from the list?
Thanks for the help and sorry if this is a very basic question.