Classic Interpreter pattern is added. (Ported from dofactory to c++)