A friend once concisely illustrated why it’s difficult to write software that can understand human language. He cited as an example the (possibly well known) phrase “chocolate dessert cup store”. It’s a delightfully bizarre case.
Possible Meanings
“Chocolate dessert cup store” could be taken to refer to any of the following things:
- A store which sells chocolate cups intended to hold desserts
- A store which sells cups intended to hold chocolate desserts
- A store, made of chocolate, which sells cups intended to hold desserts
Of these possible meanings, I suppose the first is the least unreasonable. I hope it’s a Yahoo-store type of store, though, or it’s not long for this business world.
The Problem
Not to belabor the point, but the difficulty with such phrases isn’t just that they’re ambiguous, it’s that their meaning depends on context. In most cases, the first meaning is probably correct. In the context of a fairy tale, however, the third meaning might be more reasonable. This means that the problem of understanding language (potentially) turns into one of understanding quite a bit about the world that the language describes.
I believe that the logical consequence of addressing this difficulty head-on is something like the Cyc project, while trying to side-step it with statistics and a massive language corpus may affect your fashion sense in potentially alarming ways.
In Other News
I believe I’ve identified the underlying cause of the recent financial unpleasantness.