Subject: Re: C++ briar patch (Was: Object IDs are bad) From: Erik Naggum <email@example.com> Date: 1997/05/18 Newsgroups: comp.lang.scheme,comp.lang.lisp,comp.lang.misc,comp.lang.functional,comp.lang.c++ Message-ID: <firstname.lastname@example.org> * Bjarne Stroustrup | The key features used in the initial half year were typically: | | Stronger type checking (compared to C). | Better encapsulation (classes encapsulating things such as | database access, device use, and IPC). | A few simple library classes (such as string, list, map, ...) | | After the initial half year programmers and designers because more | adventurous. For example, we saw more use of class hierarchies. perhaps I should rephrase the question, since it took me some time to realize that you're talking about the original K&R C and compilers like "pcc", not ANSI C and gcc 2.7. however, before ANSI C, I was an avid `lint' user, and I don't understand how a user of C would be able to work efficiently without using `lint'. I remember when I discovered `lint'. I had spent days on a bug that I just could not track down. everything looked correct, yet it dumped core on me. I forget who told me to use `lint', but it discovered an inconsistency in the number of arguments to a function called from two different files. that was it. this property of `lint' is available with function prototypes exported to header files these days, but all of `lint' is not in ANSI C. did the C programmers you tested this on use `lint'? if not, I can easily buy a 45% increase in productivity with a compiler that did most of what `lint' did. if they did use `lint' religously, I think you would need to remove "stronger type checking" from your list to be fair. #\Erik -- if we work harder, will obsolescence be farther ahead or closer?