I am trying to broaden my understanding of the history and development of object-oriented programming, and I am curious to find out if C was designed to facilitate Object-Oriented programming? (like C++ and Objective-C definitely are) or if it was, on the contrary, simply just a clever exploitation of the language's constructs.
I cannot seem to find any sources, including K&R, where the original authors comment on this approach.
Recently I have been looking into OOP in ANSI-C, which is described in Object-Oriented Programming With ANSI-C by Axel Schreiner.
For a freely available PDF version visit http://www.cs.rit.edu/~ats/books/ooc.pdf.
A slightly different approach is used in the part of the Linux kernel dealing with file systems, visit http://lwn.net/Articles/444910/ for more info.
The common idea is to put
function pointers in a
struct along with
fields in order to 'emulate' a
class' methods and
Objects as a formal concept in programming were introduced in the 1960s in Simula 67
While Wikipedia.org/wiki/C_programming#K.26R_C states that
In 1978, Brian Kernighan and Dennis Ritchie published the first edition of The C Programming Language.
The chronology seem to suggests that K&R must have been well aware of OOP.
Was C designed to facilitate Object-Oriented programming?