

Join the discussion
Write your take first — we'll ask for email only when you're ready to publish.
- Hacker News
- I absolutely cannot remember the details, but we did typesafe, macro based generic data structures in C in an undergrad class I took ~20 years ago (CMU Operating Systems). The idea has definitely been around, though I don't know if the implantation was the same.by mkehrt
- While C++ template is using value types, C generic pointer is not.by add2
- As far as I know many C programmers think the addition of variable length arrays in C99 was a mistake. What would be the downside of this approach?
- Is it feasible to create a new language by adding features to C
just as was done with C++?
by veexx103 - Related. Others?
I write type-safe generic data structures in C - https://news.ycombinator.com/item?id=44425461 - June 2025 (182 comments)
Type-safe generic data structures in C - https://news.ycombinator.com/item?id=26735655 - April 2021 (52 comments)
by dang - That `(1 ? (item) : (list)->payload)` was a neat trick. It gets optimized away, but the type comparison happens before that.
Still feels a bit like a party trick, but if it works...
by tniemi - I don't understand people reinventing macro-based hacks in C to achieve what was achieved in other languages many years ago. Why not using C++, for example? It's available almost everywhere, introducing its usage in an existing C codebase is pretty simple. Sure, C++ has its own downsides, but is it better to create mess with macros in C rather then using exiting language facilities and standard library containers provided by C++?by Panzerschrek
- I wrote a summarizing article on type safe container types a while back, but with some C23 specific changes and a few tweaks to work better for complex types.
https://louissven.xyz/article/how_I_do_container_types_in_C....
Feel free to flag/delete if this isn't the place.
by lor_louis