Both the user of the system and the dialog controller communicate using language. The user’s language consists of strings of English words ordered according to the rules of English syntax. The dialog controller’s language is made from strings of ground logic terms, variables, and punctuation symbols all connected according to the syntax of Prolog expressions. This chapter describes the design of a parser whose task is to translate strings from the user’s language into strings with approximately the same meaning in the dialog controller’s language. Some difficulties encountered by the parser follow. 1. Because of the less than flawless performance of speech recognizers, the parser will not know exactly what the user has said. Instead, the parser will receive as input one or more estimates of what was spoken, none of which may be absolutely correct. 2. Even what was spoken might not be what the user was thinking. The user may have mispronounced part of the utterance, or may make simple grammatical errors in the utterance. 3. The user may deliberately omit small structure words, such as “the” and “of”, from what is said. This is a natural and subconscious response of native speakers when speaking to a machine which has less than perfect language skills. 4. The parser’s grammar of the English language is probably not identical to the user’s. Thus, even without recognition errors, mispronunciations, or omitted words;, the input to the parser may not be syntactically well-formed. 5. The mapping from the user’s language to the dialog controller’s language is not one-to-one. Many inputs will have multiple meanings, and will thus need to be translated into two or more outputs. Conversely, a particular output may result from several syntactically unsimilar inputs. Together with [EM81], [HHCT86], [HM81], and [YHW+90], we argue that due to the above problems, the traditional natural language parsing techniques that accept written or typed input are not adequate for systems which accept speech input. New parsing architectures are required to deal with the high level of uncertainty that is inherent to speech input.