You never asked yourself WHY. See, that's the important question, isn't it. WHY.
I'll tell you WHY. Because two different dudes implemented it. At different times. Probably, from different continents. They didn't notice it at the time.
But, eventually, someone noticed it. And then they did something really crazy. They didn't fix it. Because that would break the software already using those functions.
It's impossible to write a perfect language from the start. Hell, it's not possible to write a good language from the start. Things that you didn't see crop up and you have to add functionality. And sometimes, the way you added it isn't right ... at that point, you have two choices.
You can fuck your existing user-base up the ass, refactor your code, change the interface, and do it "right" ... or you can do everything you can to mitigate the damage, while keeping the interface the same.
I can pull up software I wrote 10 years ago and it'll still work. Perfectly. You can only say that about languages that do it right.
And guess what? Those languages, they always have lots of warts. Because someone made the hard choice and kept something that's ugly, instead of fucking over a shitload of people to make it pretty.
I'll take function over form any day.