We present a system for the incremental interpretation of natural-language utterances in context. The main goal of the work is to account for the influences of context on interpretation, while preserving compositionality to the extent possible. To achieve this goal, we introduce a representational device, conditional interpretations, and a rule system for constructing them. Conditional interpretations represent the potential contributions of phrases to the interpretation of an utterance. The rules specify how phrase interpretations are combined and how they are elaborated with respect to context. The control structure defined by the rules determines the points in the interpretation process at which sufficient information becomes available to carry out specific inferential interpretation steps, such as determining the plausibility of particular referential connections or modifier attachments. We have implemented these ideas in Candide, a system for interactive acquisition of procedural knowledge.