Make operations Expr Term to keep things more type safe