Xref: utzoo comp.software-eng:1422 comp.lang.c++:3141 Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!csd4.milw.wisc.edu!lll-winken!uunet!ncrlnk!ncrwic!encad!entec!dharris From: dharris@entec.Wichita.NCR.COM (Dale Harris) Newsgroups: comp.software-eng,comp.lang.c++ Subject: OOP for systems programming? Keywords: OOP, C++ Message-ID: <355@entec.Wichita.NCR.COM> Date: 1 May 89 20:18:17 GMT Distribution: usa Organization: NCR, E&M Wichita - KS Lines: 45 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 (316)636-8025 <{ece-csc,hubcap,gould,rtech}!ncrcae!ncrwic!dale.harris> <{ucsd,pyramid,nosc.ARPA}!ncr-sd!ncrwic!dale.harris>