Из того, что я там читал: Почему Objective-C не очень популярна за пределами сообщества Apple?
Objective-C является надмножеством C (гораздо более строго, чем С++), поэтому проблема обратной совместимости не возникает. Все, что вы можете сделать в C, вы можете сделать в Objective-C.
Быть надмножеством является двоичным, например, беременным. Obj-C - это надмножество C, а С++ - нет.
Что они подразумевают под супермножеством? Каким образом Objective-C будет более близким//обратно совместимым с C? Каким образом Objective-C следует за философией C ближе, чем С++?
Можно ли скомпилировать любую программу C без модификации компилятором Objective-C (100% совместимость)?
Это больше вопрос о дизайне и совместимости языка программирования, чем о войнах, о которых лучше.