generic binExpr