I'll respond to your points, but was the ad-hominem really necessary?
In the end, natural language assumes a broad swath of "common sense" that computers do not have yet.
Absolutely. I'm not at all saying that we'd have had this last Tuesday if we'd just take our heads out of our asses - I'm saying it's something we should strive toward and not ignore.
Many of the problems arise in the ambiguity of the human-human communication.
Human-Human communication works, and works well - once again, we do it every single day, all the time.
Do we encounter problems with ambiguity? Sure. But they are by far the exception and not the norm. After all, forms get filled out, Driver's licenses get renewed, complicated Starbucks orders get filled - these common use cases work.
By contrast, have you ever had this fun experience with a terminal program?
quit
Unknown command: "quit"
exit
Unknown command: "exit"
shutdown
Unknown command: "shutdown"
or my favorite:
quit
Unknown command "quit." If you want to close the program, type "exit."
Simple English statements like these work extremely well in human-human communication and do not work hardly at all in human-computer communication. I'd just like us to get from A to B, that's all.