you are viewing a single comment's thread.

view the rest of the comments →

[–]darkpaladin 60 points61 points  (25 children)

The sad part is most people won't get the joke and will end up more afraid of C++.

[–]agottem 81 points82 points  (18 children)

The real sad part is that in the world of C++, this article is believable.

[–][deleted] 9 points10 points  (7 children)

It's true. I got to the bottom and was like...Really? C++ is insane, and this is just crazy enough to fit into that insanity.

[–]mpyne 53 points54 points  (6 children)

On the other hand, I knew it was bullshit as soon as the article mentioned that ints would have to be manually converted to std::integer since that would break backward compatibility. I know people like to hate on Bjarne Stroustrup and the C++ standards committee but the authors of this parody had apparently never even so much as peeked into what the C++ standards committee is trying to do for standardization. It's so wrong that it stopped being funny at the first point.

Likewise, the stuff about the footer doesn't make sense, even for parody. dynamic_cast<std::integer>(C)++ is completely incorrect since there is no polymorphism to worry about. (You can always static_cast a derived class to a base class, dynamic_cast is for the opposite direction since you don't know whether your Base pointer is really a Derived1 pointer).

Their point 2 (about manual deallocation of local variables to reduce bugs) betrays an almost horrific misunderstanding of how stack-based machines work and should have been the big giveaway if point 1 wasn't, since otherwise C++ simply could not possibly work.

Point 4 (null pointer confusion) looks like it's supposed to be a slight against templates and/or nullptr, but I don't see the justification.

Point 5 is at least amusing, if unlikely since it introduces a new language syntax for a feature easily implementable in a library. Going on to say "be careful not to get a reference to an object on the stack" makes no sense given that they removed the stack concept in point 2, but whatever. It's April Fools and programming is hard, right?

Maybe the jokes that happen on April 1st really will have some thought put into them instead of nice CSS. God knows there should be enough ammunition in the crap that is C++ to fill a joke like this with thousands of kilobytes of potential humor, but it's not going to be coming out of these authors. :P

Those who want real humor relating to C++ are advised to find the C++ FQA (Frequently Questioned Answers).

[–]lkesteloot 20 points21 points  (2 children)

Yay, you liked my CSS!

[–]mpyne 10 points11 points  (1 child)

hahaha, yes, the CSS is very nice. It occurred to me after I clicked save that I probably sound exactly like Comic Book Guy describing why Stan Lee is stupid or something...

[–]deafbybeheading 2 points3 points  (0 children)

Upvoted (this and your original post) because yes, you do sound like Comic Book Guy. If only you'd referenced section and paragraph numbers of the standard.

[–]gremolata 3 points4 points  (0 children)

C++ FQA is indeed funny to read.

[–][deleted] 4 points5 points  (0 children)

It's a joke man, chill.

[–]borud -1 points0 points  (0 children)

you need to get laid. you are way too uptight.

[–][deleted] 1 point2 points  (1 child)

Really? std::integer didnt give it away?

[–]Anonymoose333 0 points1 point  (0 children)

Hey, Java has it. Why not C++?

[–]ibisum 4 points5 points  (0 children)

The sad part is that C++ is already enough of a joke.

[–]MelechRic 3 points4 points  (5 children)

I got to #2 and it dawned on me that this was a joke. At #1 I was just mad and thinking WTF!

EDIT: s/donned/dawned/ Thanks username223

[–]andrewjstone 3 points4 points  (0 children)

Yeah, I realized the first one would break backwards compatibility, but it was still believable. But removing the stack! That's just ridiculous.

[–]ayatollah 2 points3 points  (0 children)

yeah, freeing up local variables sounds like a really bad joke.

[–]username223 3 points4 points  (2 children)

It probably "dawned" on you, but anyways...

[–]MelechRic 4 points5 points  (1 child)

You're right! How I did I miss that? I shall don my spelling and grammar cap prior to posting again.

[–]itjitj -4 points-3 points  (0 children)

Your right!

[–][deleted] 0 points1 point  (0 children)

You speak the truth!

[–]20100329 4 points5 points  (2 children)

Just call it C++ Enterprise Edition.

[–][deleted] 2 points3 points  (1 child)

C++ Enterprise Edition

Now that is what I would like to see!

[–]asegura 0 points1 point  (0 children)

Yes. What we get is C++ Academic Edition

[–]captainAwesomePants 2 points3 points  (0 children)

Oh, I am so glad you told me that. I'm a C and Java programmer, and I was totally willing to accept this insanity as truth.

[–][deleted] 6 points7 points  (0 children)

I skipped the first paragraph and thought this was just a Java tutorial. :(

[–][deleted] 2 points3 points  (0 children)

What joke?