Why do computer systems have a difficult time with ambiguity?

Computers are not yet capable of storing and processing the vast amounts of contextual data required for resolving ambiguities well. Consider the following scenario overheard by both a human and a speech recognition system:

Julia: Yuck. Do you know what sweetbreads are?

Julio: Yes. I’ve eaten a [pair, pear].

A speech recognition system is likely to choose pear, whereas a human (with the proper context) would most likely choose pair. Why do you think the computer would pick pear? Also, what could we do to the program to correct this incorrect word choice?