2) And this is different exactly in that it is not a complete language, but a library of CPP macros and some supporting infrastructure.
I blame my confusion on the .cpp extensions!
OTOH, Cos offers more compile-time type safety than GLib, so you might hope that you'd need to spend less time in the debugger.
As a friend of mine likes to put it - "Objective-C is C raped by Smalltalk without proper understanding of the language anatomy". Not exactly accurate, but fairly close still :)