| ▲ | SuperV1234 an hour ago | |||||||
It is "cryptic" and "ugly" to you just because you're not familiar with it. You'd pick the macro-based implementation because you are familiar with it. Seeing this argumentation is so tiresome, because it feels like there is a lack of self-awareness regarding what is "familiar" and what isn't, which is subconsciously translated to "ugly" and "bad". | ||||||||
| ▲ | delegate 35 minutes ago | parent [-] | |||||||
Have you ever used other (modern) programming languages ? In a lot of languages, you achieve the same with 1 line of code. It's not about familiarity, it's about the fact that it's a long and convoluted incantation to get the name of an enum. Why do I have to be familiar with all those weird symbols just to do a trivial thing ? Update: Zig: const Color = enum { red, green, blue }; const name = @tagName(Color.red); // "red" Rust: #[derive(Display)] enum Color { Red, Green, Blue } let name = Color::Red.to_string(); // "Red" Clojure: (name :red) => "red" | ||||||||
| ||||||||