Original link: Interfaces and traits in C / Anton Zhiyanov.
Pretty cool, but I would say that if one want OO then one should pick an OO language.