Dijkstra clearly points out that it would be impossible to program in a natural language. The thing is there are constructed languages such as Lojban[0]. Lojban, while semantically ambiguous, is grammatically unambiguous. This means a computer can understand something said in Lojban, but a computer cannot perfectly understand what is meant. While I'm no expert, I'm pretty sure it would not be very hard to create a computer interface using Lojban. I'm curious as to if anyone can explain why this is or isn't feasible.
That wouldn't help significantly, because the hard part of getting a computer to understand instructions in English isn't understanding English, it's understanding the universe.
Suppose you want a robot you can give instructions like "clean the kitchen". Programming the robot to understand this as performing the action 'clean' on the object 'kitchen' is something we can already do. The problem is that the robot doesn't know how to perform that task. It doesn't even know what what state of affairs constitutes the desirable end result of a clean kitchen (as opposed to e.g. an empty kitchen because it threw out all your food and cutlery along with the trash). That knowledge is the meat of the problem, and it's just as hard in any language.
[0] http://www.lojban.org/tiki/Lojban