"Get something" vs. "Go get something"
Solution 1:
Particularly in American English, go get means ‘go and get’. Yeah, I know, it’s redundant, but then so is much else in the language.
Solution 2:
There is a difference in "May I go get some water?" vs. "May I get some water?" where the action of leaving to obtain the water is expressed rather than implied. An expectation permission to have water is expected but that permission to leave to obtain it is not. Generally though such usage is a matter of style and to "go get" is generally a US English usage.
In some regions (mainly US) "May I get some water?" would be to request water rather than to acquire it for yourself and used in place of "May I have some water?"
Solution 3:
This happens for three reasons.
- The construction "go + bare infinitive" (and "come + bare infinitive") is ubiquitous and productive. That is, any infinitive can be used there. And sometimes it just so happens that that infinitive is get. Strictly speaking it can even be another go — that is, "may I go go there" is theoretically possible. This construction is not limited to American or informal English, either.
- Redundancy is not ungrammatical or wrong. It is only redundant. It is not a rule of English — or any language, for that matter — that if a word can be removed, it must be removed. And in spoken language you can't take it back anyway.
- As you can see from the other answers so far, some people disagree that it is redundant in the first place. "Go get" doesn't quite mean the same as just "get".
In short: it gets produced because it's grammatical, and sticks around because at worst it has no reason not to and at best it actually serves a purpose.