C is regarded as the archaic, hardcore, fire-breathing dragon of programming languages that requires a mastery of computer architecture to tame and as such, is only used to write OS-level code: drivers, programming languages and high-performance libraries that require cross-machine portability… yet, there I was, staring at a short piece of code that reached into the depths of BlackBerry's Platform Services, requesting information on system hardware and sending it through the netherealm into the native Qt library and I was still waiting to write the requisite "malloc." I must have done something wrong… how am I reading the results on my Z10's screen without having allocated screen buffers??!!!
Before QNX, I held NetBSD at the back of my mind as a subconscious counter to anything I read about C being incapable of offering safe, modular, accessible APIs. QNX erased any doubt of C's competence in this regard and as I continue to explore the POSIX specification, I find myself looking at C++ and the languages that followed it with a higher level of frustration and disappointment than I had before… C++ is not easy and can be frustrating when one tries to write programs "the way they are supposed to be written." I find that I need to work with C++ when trying to envision what a program should look like, instead of working with my concept and just coding it.
To be continued...