Some languages such as C are unable to inherently provide object oriented capabilies, however with structs, classes are able to be emulated, with function pointers, member functions to clases are able to be created, however, features such as inheritance are difficult to emulate.
Haskell is another programming language that is not strictly object-oriented: classes as abstract datatypes are able to created, Haskell modules provide some class behavior, but objects based on this "class" are not able to be created.
The Gtk toolkit, written in C, is an example of a toolkit is object-based, but not object oriented.
This article is a stub. You can help Wikipedia by fixing it.