From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 109fba,b87849933931bc93 X-Google-Attributes: gid109fba,public X-Google-Thread: fac41,b87849933931bc93 X-Google-Attributes: gidfac41,public X-Google-Thread: f43e6,b87849933931bc93 X-Google-Attributes: gidf43e6,public X-Google-Thread: 103376,b87849933931bc93 X-Google-Attributes: gid103376,public X-Google-Thread: 114809,b87849933931bc93 X-Google-Attributes: gid114809,public X-Google-Thread: 1108a1,b87849933931bc93 X-Google-Attributes: gid1108a1,public From: jmartin@cs.ucla.edu (Jay Martin) Subject: Re: What is wrong with OO ? Date: 1997/01/19 Message-ID: <5bub0e$jfc@uni.library.ucla.edu> X-Deja-AN: 210997288 references: <32D11FD3.41C6@wi.leidenuniv.nl> organization: University of California, Los Angeles newsgroups: comp.lang.c++,comp.lang.smalltalk,comp.lang.eiffel,comp.lang.ada,comp.object,comp.software-eng Date: 1997-01-19T00:00:00+00:00 List-Id: bs@research.att.com (Bjarne Stroustrup) writes: >dewar@merv.cs.nyu.edu (Robert Dewar) writes: > > Bjarne, in the middle of a very nice extended discussion of C++, says > > > > "Had C++ not been relatively easy to learn and use reasonably well, it > > would have disappeared long ago. By relative I mean the amount of effort > > needed compared to the amount of benefit gained." > > > > Hmmm! I don't think I buy that. People will learn what is at hand pretty > > much regardless of whether something is easy to learn and use. > > ... > > Going back to the main subject, which is the allegation that popularity > > indicates ease of learning and use, >I don't think I claimed that, and I don't think that I have to. C++ use grew >very nicely for years without hype. I base my statement on years of looking >at C++ use, teching, and learning - many of those years were before anyone >was given time off from their day job to learn C++. >I think that if C++ was as hard to understand and use as some people claim, >it would have failed to become popular in the first place and would have >vanished under the continuous barrage of fair and unfair criticism - despite >its (eventual) popularity. I find this incredibly naive. C++ is popular because it is perceived as "C version 2" or "C 8X-9X". You pretty much automatically get usage by a large number of C programmers. That it came from Bell Labs pretty much guaranteed its success over Objective C which came from some pint size "is it out of business yet" company. Since C programmers are notorously ignorant of computer language design, the audience is not too discerning. Suppose instead that you had chosen to do an almost identical language except with a clean well designed syntax that was not syntactically upward compatible from C. I believe this "alternate reality C++" would have failed miserably. I thought it was brilliant the way you appealed to the anti-SE neanderthal dark-side of C programmers with the "No nanny-ism, any safety checks would be "dangerous" and demeaning". You see there is a huge segment of programmers who love the arcane, the complex and the hard to understand. This is because they are smart and they know that hard to learn tools that require alot of special expertise will give them a competive advantage in the programming marketplace because it limits the number of programmers that can do the work thus guaranting high salaries and job security! Thus "high learning curve" tools leads to daydreams of speeding down the freeway in your high powered BMW convertable with an adoring and beautiful big titted blond bimbo at your side. Is their any wonder why the software field is not "rational"? Still I find C++ a remarkable job given that you had to stay upward compatible (syntax/sematically and philosophy-wise) with a turd. > > I think the point is that such > > popularity indicates accesibility more than anything else. By accessibility > > I mean that something is available, viewed as hot, and can be learned well > > enough to do *something*. Consider the situation today, students want to > > learn Java, not C++, they see C++ as yesterday's language, and Java as > > the language of tomorrow. Just from the incredible rate at which Java books > > are cascading into bookstores, I have to guess that the rate of learning of > > Java far exceeds the rate of learning of C++. But I would NOT conclude from > > this that Java is easier to learn or use than C++. Maybe it is, but you > > cannot conclude anything just from popularity. >It is amazing what hype and serious marketing dollars can do, but what >little objective data I can lay my hands on indicates that C++ use is >still increasing very nicely. However, I have my doubts whether all of >those books will actually help the Java community. This field is driven by marketing and rational behavior is at a minimum. Sometimes I wish a rational force like some academic scholars would actually study the field in an objective fashion. Alas, CS Academia is total failure (I will restrain myself from the usual explicative strewn rant). Anyway, any argument based on the rationality of field "like it must be good because people use it" is nonsense. There are just too many non-SE factors in these decisions. I think though Java may turn out to be a better software engineering language than C++ and Ada95 as it contains two extra design philosophies which I deem necessary for good language design: C++ Ada95 Java 1. Simplicity No No Yes 2. Programmers are morons. No Yes Yes > > Ada folks have never played the game of claiming popularity as an indicator > > of any kind of quality, because they have not been able to. I realize that > > C++ is in a position to make such claims, but I recommend against it, because > > I think you will find that your arguments will backfire as Java becomes > > the next hot language, at least for a while :-) >Thanks for the advice. The furthest I go is to claim that unless C++ >had at least some of the virtues I claim for it, it would have died during >the early years where there were essentially no C++ marketing and alternatives >languages with marketing dollars behind them existed. >Naturally, even that is invariably mistaken for the disreputable "5 million >morons cannot be wrong" argument :-( Of course programmers are morons, just look at them! Jay