The main idea behind that is if user entered more values then required,
they won't be lost but instead consumed by subsequent reads (calls to
getWord). That's how scanf() in C and 'cin >>' in C++ behave, and I'm
quite surprised that I can't do that in Haskell.