public static Expr Make(Expr left, Expr right) { return new Multiplication(left, right); }
public Multiplication(Expr arg1, Expr arg2) : base(arg1, arg2) { }
public Addition(Expr arg1, Expr arg2) : base(arg1, arg2) { }
public static Expr Make(Expr left, Expr right) { return new Addition(left, right); }
public BinaryExpr(Expr arg1, Expr arg2) { _left = arg1; _right = arg2; }