Yeah, I came to Rust from Scala and Kotlin, where equality is default-implemented (for caseclass and dataclass respectively, which is basically all we ever used), so this meme surprised me a bit.
I do actually like that you can decide a type cannot be compared, because sometimes it really just doesn’t make sense. How would you compare two HTTP clients, for example? But yeah, it certainly is a choice one can disagree with.
Yeah, I came to Rust from Scala and Kotlin, where equality is default-implemented (for
case class
anddata class
respectively, which is basically all we ever used), so this meme surprised me a bit.I do actually like that you can decide a type cannot be compared, because sometimes it really just doesn’t make sense. How would you compare two HTTP clients, for example? But yeah, it certainly is a choice one can disagree with.