public void Run()
        {
            Context c = new Context("hllo ");

            NonTerminalExpression root = new NonTerminalExpression
            {
                Expressiona = new TerminalExpression(),
                Expressionb = new TerminalExpression()
            };
            root.Interpert(c);
        }
 public override void Interpert(Context context)
 {
     Console.WriteLine("Terminal Symbol{0}",context.Name);
 }
 public override void Interpert(Context context)
 {
     Console.WriteLine("Non Terminal Symbol{0}",context.Name);
     Expressiona.Interpert(context);
     Expressionb.Interpert(context);
 }
 public abstract void Interpert(Context context);