--Rules for which binary-operations can switch their arguments
isCommutative op = op `elem` [Plus, Times, And, Or, LAnd, LOr, Eq]
isCommutative op = op `elem` [Plus, Times, And, Or, LAnd, LOr, Eq]
isCommutative op = op `elem` [Plus, Times, And, Or, LAnd, LOr, Eq]