A computer program product for processing language statements in a computing system, wherein the computer program product comprises a computer readable storage medium having computer readable program instructions executed by a processor to perform operations, the operations comprising:
- generating a syntax tree from a question to process;
- annotating an information space of the syntax tree with concepts corresponding to tokens in the syntax tree, wherein a concept comprises an object in a domain of the question and relates to other concepts in an ontology of the domain;
- providing a higher order action that specifies an input, action parameters, and an output;
- determining an element in the information space of the syntax tree corresponding to the input of the higher order action;
- determining an action of a plurality of actions in the domain of the question having parameters matching the action parameters;
- providing the determined element as input to the determined action to produce output of the determined action that is processed according to the output specified by the higher order action;
- and
- annotating the information space of the syntax tree with the output from the higher order action to use to provide an answer to the question.