Eleanor McHugh wrote:
> On 11 Jul 2008, at 12:12, Dave Bass wrote:
>> phlip wrote:
>>> All system-level engines are written in C, not C++.
>>> ...
>>> It compiles for everything from wristwatches to Mars Rovers.
>> This is because object-orientation is unnecessary. Any job you can do
>> with it, you can do without it.
>>
>> Those of us who have worked on large programs in Fortran, C and
>> assembler know that it's easy to write excellent software in an
>> imperative style, as you long as you have the discipline to structure
>> your data and program code sensibly.
> 
> Very true, although a large program in assembler is often a much  
> smaller program when rephrased in C and likewise when the C is  
> rephrased in C++. That's the primary win with OO - it reduces the  
> volume of code and hence eases the strain of remembering that code in  
> detail.
> 

Close but not really.  The primary purpose of OO is that it provide a
higher level of abstraction than C does. One that can get closer to 
the problem being solved than C does in natural use.

This >can< result in less code, but the main win is that it results in 
a better mapping of the program to the problem, and a better 
understanding of the program by the programmers.

Naturally, all of this assumes you know what you are doing

>> OO is the latest fashion, but something else will come along soon, and
>> we'll all be deprecating OO.
> 
> I'm not sure it will be superseded any time soon, objects being a very  
> natural way for people to think about real-world problems.
> 
> 
> Ellie
> 
> Eleanor McHugh
> Games With Brains
> http://slides.games-with-brains.net
> ----
> raise ArgumentError unless @reality.responds_to? :reason
> 
> 
> 


-- 
Ron Fox
NSCL
Michigan State University
East Lansing, MI 48824-1321