Natural-language semantics is important in trying to make computers better able to deal directly with human languages. In one typical application, there is a program people need to use. Running the program requires using an artificial language (usually, a special-purpose command language or query-language) that tells the computer how to do some useful reasoning or question-answering task. But it is frustrating and time-consuming to teach this language to everyone who may want to interact with the program. So it is often worthwhile to write a second program, a natural language interface, that mediates between simple commands in a human language and the artificial language that the computer understands. Here, there is certainly no confusion about what a meaning is; the meanings you want to attach to natural language commands are the corresponding expressions of the programming language that the machine understands. Many computer scientists believe that natural language semantics is useful in designing programs of this sort. But it is only part of the picture. It turns out that most English sentences are ambiguous to a depressing extent. (If a sentence has just five words, and each of these words has four meanings, this alone gives potentially 1,024 possible combined meanings.) Generally, only a few of these potential meanings will be at all plausible. People are very good at focusing on these plausible meanings, without being swamped by the unintended meanings. But this takes common sense, and at present we do not have a very good idea of how to get computers to imitate this sort of common sense. Researchers in the area of computer science known as Artificial Intelligence are working on that. Meanwhile, in building natural-language interfaces, you can exploit the fact that a specific application (like retrieving answers from a database) constrains the things that a user is likely to say. Using this, and other clever techniques, it is possible to build special purpose natural-language interfaces that perform remarkably well, even though we are still a long way from figuring out how to get computers to do general-purpose natural-language understanding.