1. An engine to perform root cause analysis on a system, the engine comprising: a module loader to load modules containing computer language statements modeling system elements, a first module of the modules including a continuation, the continuation conforming to continuation passing style programming and being associated with a causal rule, the causal rule being associated with a condition representing a state change of a system element; a hypothesis generator to execute the continuation to identify a first possible root cause of the condition for inclusion in a set of possible root causes of the condition; and, a blackboard to select at least one of the possible root causes as a root conclusion of the condition, at least one of the module loader, the hypothesis generator or the blackboard generator being implemented by a programmed processor.