|
|
Warp wrote:
> Darren New <dne### [at] sanrrcom> wrote:
>> Can you tell me what I said that you took to be "a tirade of C++ bashing"?
>
> A combination of concepts gave me the impression that you were
> denigrating the way C++ does thing, while praising how other languages
> do it better.
OK. As I said, I simply said I prefer how the other languages break
modularity instead, and then I listed the reasons. "Bashing" to me implies
denegrating it either by lying about its capabilities or saying it's bad for
no reason or using abusive language or something like that, yes?
And yes, I was saying I prefer how other languages do it to how C++ does it,
and I listed the reasons why. We all know why C++ does things the way it
does, and the benefits that provides to the programmer. That doesn't make it
"C++ bashing." If anything, the bashing was of Java in the original post.
> Maybe you didn't use the word "unsafe" in a derogatory manner, but it
> was easy to get the impression.
I think you're oversensitive about that. I don't like unsafe languages for
the reasons I've stated, but I don't know how saying that is "derogatory". I
said "C is unsafe", I didn't say "C is a fucked up steaming hack pile of
garbage whose inventors should be shot for being so stupid." *That* is
derogatory.
> When you said basically that it's not true
> that C++ enforces modularity, and proceeded to "demonstrate" that by
> trying to give examples of how you can circumvent C++'s semantics by
> using low-level pointer casting and arithmetic, it gave the impression
> that you were denigrating C++ for trying to do something and failing
> miserably.
OK. That wasn't the impression I was trying to convey. I was simply trying
to point out that no unsafe language is truly modular, and the easier it is
to find the unsafe operations, the easier it is to debug accidental breakage
of modularity.
> This impression was emphasized by you at the same time telling
> how you prefer how other languages do it "right" by having explicit support
> for breaking the module interface boundaries, while in C++ you have to
> resort to non-standard hacks to do the same.
You have to resort to non-standard hacks to *intentionally* break
modularity, is what I said. And that there's two types of modularity involved.
> Also your arguments why
> someone would even want to break the interface boundaries was not completely
> convincing to me. (Your only argument seemed to be "reflection", and my
> only experience on it is with Objective-C, where it's done without really
> accessing private members from the outside, at least as far as I have had
> to deal with it.)
It doesn't happen really often, which is why I thought *you* were
overreacting by calling CLOS a kludge OO system simply because you can break
modularity by reading the source of the module. :-)
> When you wrote that C++ is the only unsafe OO language
> you know of, it sounded like you were bragging how *all* other OO languages
> are better than C++, which gives the impression that you are telling that
> C++ is the worst possible OO language in existence.
I said that because you challenged me to say which I'm talking about. By
then, you were already convinced I had to be bashing C++ and I was trying to
hide it after the fact. :-)
> I apologize if I overreacted.
Apology accepted. I believe you did. I admit I've bashed C++ in the past in
some ways, so it's not unreasonable, but I've been trying not to do that for
quite some time now. It's primarily you teaching me about the power of it in
conversations like this that has made me appreciate for what it is.
It's actually not that bad a language if it's the sort of language you need.
I disagree with the design principles, and sometimes I explain why I
disagree with them, but that's an opinion that everyone can feel free to
decide for themselves. It's kind of funky how much power it can manage to
build onto itself using what it comes with.
I'll try to be even *more* careful how I talk about things if you'll do me
the favor that, when you get annoyed, you re-read without assuming I'm
bashing and see if it still sounds like I'm "bashing."
--
Darren New, San Diego CA, USA (PST)
My fortune cookie said, "You will soon be
unable to read this, even at arm's length."
Post a reply to this message
|
|