Hacker News new | ask | show | jobs
by c-cube 1055 days ago
When I looked at it a few years ago, the compiler didn't prevent you from accessing fields from the wrong variant, and didn't provide exhaustivity checks. So I think it still falls short of this (excellent) litmus test :/
2 comments

They've improved the compiler analysis for them significantly, including exhaustivity checks and field checks.
Also Nim requires you to use unique field names across all variants.
This annoying restriction is lifted in Nim 2; see the linked announcement.
Where in the announcement does it say that?
They likely read "overloadable enums" and went "Oh Rust calls their tagged unions enums" so assumed all languages did.
Oh, no, I actually misunderstood cobby's complaint: the field names, yes, those still have to be unique. Which is also a bit annoying, though I've seen discussions about changing it.