Path: utzoo!attcan!uunet!mailrus!iuvax!cica!tut.cis.ohio-state.edu!gem.mps.ohio-state.edu!usc!cs.utexas.edu!rutgers!njin!princeton!phoenix!markv From: markv@phoenix.Princeton.EDU (Mark T Vandewettering) Newsgroups: comp.object Subject: Re: Guthery slams OOP in latest DDJ Message-ID: <11675@phoenix.Princeton.EDU> Date: 22 Nov 89 01:53:23 GMT References: <2664@bingvaxu.cc.binghamton.edu> <4602@ncsuvx.ncsu.edu> Reply-To: markv@phoenix.Princeton.EDU (Mark T Vandewettering) Organization: Princeton University, NJ Lines: 51 In article <4602@ncsuvx.ncsu.edu> jnh@ecemwl.UUCP (Joseph N. Hall) writes: >In article <2664@bingvaxu.cc.binghamton.edu> cjoslyn@bingvaxu.cc.binghamton.edu (Cliff Joslyn) writes: >>I'm not an OOP programmer, but I read a real convincing argument in the >>latest Doctor Dobb's Journal #158, "Are the Emporer's New Clothes Object >>Oriented?", pp. 80-86 by Scott Guthrey. >>... >>And more: "...the programmer is invited to pass the cost of expedience >>onto the user of the system. This wholesale sacrificing of runtime >>efficiency to programmer's convenience, this emphasis on the ease with >>which code is generated to the exclusion of the quality, usability, and >>maintainability of that code, is not found in any production programming >>environment with which I am familiar. ... This is not the least bit compelling, because it is seriously incorrect in many ways. The first and foremost is that there is no one language which is efficient or inefficient. Individual implementations are either relatively efficient or relatively inefficient. This goes for any program. There has been a large amount of interest in C++ lately. Why? Because it does present a better model for programming than C, with minimal performance penalty. And please illuminate me (this is rhetorical, not directed at any of the people whose text is included here) as two how you can generate code easily, without it being quality, usable and maintable? Any code which is not the last three can hardly be called a program. (As an aside, I find it amusing that we call programs "codes") >Pardon me, but is he discussing any OOP environment that is actually in >use??? How does C++ sacrifice runtime efficiency in ANY manner? (I mean, >if you've got to have virtual something you've got to have virtual >SOMETHING ...) How is Smalltalk deficient (compared to, say, FORTRAN) >in the quality, usability and maintainability of code? Does Mr. Guthrey >perhaps prefer ADA? (Or, then again, maybe that's what he things represents >the future of OOP.) Smalltalk was typically implemented as an interpreter of course, which made its environments much easier to use than your typical FORTRAN system of course :-) It is comparing apples and oranges to compare the speed of FORTRAN to the speed of Smalltalk. There have of course been work on making Smalltalk a more efficient language, most notably the SOAR project, which had some impressive results. Like every other overly hyped topic, I feel that OOP has its merits and its drawbacks. I never tire to hear of legitimate and well thought out criticisms, or equally deserved praise. Mr. Guthry on the other hand, succeeds in making himself look foolish by perhaps arguing a valid point, but for the wrong reasons. Mark VandeWettering (even I don't share my opinions, why should my employer)