Hacker News
Union Types and Option Types (2025)
32 points by g0xA52A2A
ago
|
13 comments
gnabgib
|next
[-]
(2025) And about CopperLang (203 points, 3 days ago, 120 comments) https://news.ycombinator.com/item?id=50308754
p1necone
|next
|previous
[-]
One simple but non obvious (at least to me) trick when implementing tagged unions: put the union discriminator/tag at the end, not the beginning - that way a pointer to a union is also a pointer to the value, no need to increment the pointer to point past the tag after discriminating.
ks2048
|next
|previous
[-]
What is the best source for cross-language description of language features? Eg: “optional types”: which langs have them and how do they work? Same with “union types” etc.
DonaldPShimoda
|root
|parent
|next
[-]
There's no single oracle for these things, unfortunately. One common citation is "Types and Programming Languages" by Benjamin Pierce (2002), but otherwise people generally just use the nomenclature of a specific language and hope cross-linguistic adventurers will figure it out. I think there's somewhat less variance with more modern languages, though, so in some ways it's less of an issue than it once was.
tylermk04
|root
|parent
|previous
[-]
Rosetta code is often helpful. Not exactly for language features, necessarily:
https://rosettacode.org/wiki/Monads/Maybe_monad