All I can say is that in many previous jobs if I had tried to force everyone to use C++ they would have killed me -- but a few simple ADTs they were quite happy with. That the data structures happen to use structures containing function pointers and up-pointers to ancestor structures internally, just like C++ classes, is something they didn't need to know or care about unless they were adding a new descendant ADT. They had their happy C still. (Also, we had a lot of pre- and post-processors involved which could parse C -- just -- but had no chance of parsing C++. One of them claimed to parse C++, but it couldn't handle templates at all, so it barfed on the G++ headers. Most impressive. Not.)
Posted May 17, 2012 22:01 UTC (Thu) by HelloWorld (guest, #56129)
[Link]
I don't see the connection to the topic at hand. The discussion was about object systems and GObject specifically, and ADTs have nothing to do with those.
Also, I think that ADTs in C invariably suck. It's simply not possible to write generic, type-safe ADTs in a sane way (the C preprocessor isn't sane).