On Fri, Dec 28, 2007 at 10:16:08AM -0500, Gary Baluha wrote: > I'm also not sold on the concept of object oriented programming in general. > Along the lines of "nothing is impossible with enough layers of > indirection", I think too much abstraction also removes the programmer from > what he/she is actually doing. OOP is a nice concept on paper, until you > realize that most large programming projects are not written by a single > person, and most people will not be coding the entire tree of abstraction > they are using. This leads to errors that may be very difficult (if not > impossible) to fully track down. >
AIUI, that's where Ada's compile-time checks come it. With Ada, (if you choose to do OOP) you have the object definition and the implementation separate. If everyone can agree (and hense document) the object definition, the implementation can change all it wants. If the person doing the implementation also changes the definition, then Ada screams at you since the definition in all places that use the object must agree. Ada is designed specifically for the software-engineering world. It is supposed to do low level stuff well, since most of the embedded things it runs (e.g. missles) don't actually have an OS, just he Ada program accessing the hardware directly. Doug.