Hacker News new | ask | show | jobs
by Someone1234 4153 days ago
> Comparing objects of different types is a compile-time error.

Then use C. In OOP comparing objects of different types is key to inheritance. The reason their example works is because everything in C# inherits from object, so you'll always find some commonality to compare.

You could have the compiler generate a warning when object.equals is used (rather than overridden) but getting rid of comparisons between different object types completely is backwards and will reduce efficiency.