[comp.software-eng] OOP for systems programming?

dharris@entec.Wichita.NCR.COM (Dale Harris) (05/02/89)

I am looking for honest educated opinions based upon practical 
experience regarding the applicability of Object-Oriented 
Programming in the areas of operating system and peripheral 
controller (subsystem) development.  It seems that OOP is another 
esoteric concept which some folks (non-programmers in particular) 
regard as the panacea for all programming.  We programmer-types 
know better than to jump onto any passing bandwagon without 
investigating it first :-).  

I realize that OOP has its place in applications programming.  
What I don't know about is the appropriateness of OOP in systems 
and controller (firmware) work.  The issues I and countless 
others are concerned about are:

1.   Does OOP work below the application, particularly in real-
     time general-purpose operating systems and in event-driven 
     peripheral controllers?  

2.   Can OOP be effectively integrated at those levels into 
     existing non-OOP architectures?  

3.   How well can the concepts of OOP be applied without actually 
     implementing in one of the OOLanguages such as Objective C, 
     C++ or Eiffel?  

4.   How severely is performance impacted in using OOP?  (For 
     controllers, performance on low-cost processors is more 
     important than elegance.  Can we have both?)

5.   Is dynamic configuration (runtime binding) practical in 
     systems and subsystems developed under C++ without 
     recompilation?  (It is not practical to distribute compilers 
     in subsystems if new objects are added.)

6.   Is there any available literature dealing with OOP in other 
     than application programming?


-- 
Dale Harris  Software Engineering, NCR E&M Wichita
 NCR:654-8025 <Dale.Harris@Wichita.NCR.COM>
(316)636-8025 <{ece-csc,hubcap,gould,rtech}!ncrcae!ncrwic!dale.harris>
              <{ucsd,pyramid,nosc.ARPA}!ncr-sd!ncrwic!dale.harris>