One should not confuse the issues of implementing >, <, etc for structs with that of implementing simple equality (and !=). I categorically think that > and < should NOT be implemented for structures. But I think since we have assignment, it makes good sense to define == and != for structures.