public override object Evaluate(MyContext context) { var p = context.GetProgramDeclNode(Name); foreach (var func in p.Funcs) { func.Evaluate(context); } var o = p.Statements.Evaluate(context); return o; }