[ On Wednesday, February 27, 2002 at 01:19:22 (-0800), Thomas S. Urban wrote: ]
> Subject: Re: OT: C++, yuck!
>
> Ok, this is way off topic, but I'm curious what you think the bad
> features of C++ are? I keep reading how bad you think it is, but not
> really why? And I mean the langauge, not portability - I talk about
> that a bit later.
I don't really have time to get into a detailed discussion, and
certainly not in this forum! ;-)
I recommend you read the published articles, papers, and such that
describe problems with C++ -- for the most part they've only confirmed
what I knew intuitively from studying the language directly.
Alan Kay's comment about OO vs. C++ sums it all up rather nicely though.
> > > *Every* language has problems. There is no panacea.
> >
> > I couldn't agree more! C++ just has more than its fair share of
> > problems. ;-)
>
> How do you figure? C has 6 problems and C++ has 6 + 4, therefore it has
> more?
Well it's more like C has N problems, C++ has (N - (N / Y) + M) problems
where (M > (N - (N / Y)) and maybe even (Y > N) just for good measure. :-)
> There are a couple features, like operator overloading, that
> I think would have been better left out of the langauge, but even those
> can be fine if used with restraint.
You see that's a very perfect example of a fundamental flaw with the
very idea of a language like C++ (or Java or C# or any other attempt to
describe a half-baked Modula-style language as "object oriented").
Operator overloading should not be an issue -- it must be a very natural
and inherent part of any OO language. Look at the very invention of the
concept in Smalltalk to see why.
> In short, C++ is a good langauge if your developers know how to use it,
Mabye -- but y'all would be much more productive and useful to society
if you'd try to forget C++ and everything you know about it (right after
you've re-written all your code in some more cost effective language, of
course!).
> > If you can't justify using C for a project (on language merits alone)
> > then C++ is right out of the running from the get go!
>
> That is silly. What if you could justify C, except you need dynamic
> binding too? Then could you justify C++? What about you need all the
> features of C, with generic programming as well? Then is C++ back in
> the running?
"dynamic binding" isn't a feature you could ever possibly decide on
needing up front for any kind of project you'd ever even get close to
justifying C for! Get real!
--
Greg A. Woods
+1 416 218-0098; <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]>; <[EMAIL PROTECTED]>
Planix, Inc. <[EMAIL PROTECTED]>; VE3TCP; Secrets of the Weird <[EMAIL PROTECTED]>
_______________________________________________
Info-cvs mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/info-cvs