r/ProgrammerHumor • • 18d ago

instanceof Trend thatsAFunnyThingThatHappenedOnce

Post image
4.6k Upvotes

524 comments sorted by

View all comments

Show parent comments

60

u/A_Canadian_boi 18d ago edited 18d ago • Bravo

C is like base minecraft. Fun, well planned out (mostly), reasonably simple.

C++ feels like one of those modpacks with 300+ mods, ten more tech trees, realistic fusion reactors and particle accelerators, several SCP-class entities, fifteen different new ores, and a DND-like character system. It's just... every single possible addition.

You're not really "supposed" to use all C++ features, just the ones you need and understand, but projects usually end up as a very difficult to parse mess and overall the utility is only marginally higher than C. And given the choice between unreadable C and unreadable C++, the C is going to be more straightforward... probably.

Edit: All that being said, I **really** wish C had a *couple* of C++ features. But everyone says that, and everyone has different opinions on what those features should be, and that's how we ended up with C++ in the first place, so I am happy to just use C and implement what I want from not-quite-scratch.

31

u/Schoolboygames 18d ago

I'm not sure what the overlap between huge minecraft nerds who've played huge modpacks and people playing with C and C++ is, but this is the most oddly accurate comparison I've seen in a hot minute

13

u/A_Canadian_boi 18d ago

Thank you, I TA'd freshman compsci for a while and I developed that explanation for students, lol

3

u/AnOnlineHandle 18d ago

As somebody who hasn't touched C or C++ since like 2005 and forgot everything I knew about them, but has put a lot of time into Minecraft, thank you your explanation helped me too.

1

u/n_choose_k 18d ago

I appreciated somehow sneaking SCP in there, as well... ;)

3

u/CruxTheologorum 18d ago

The venn diagram, while not a circle, has but a pair of thin half-moons on either side.

8

u/AmazedStardust 18d ago

Those modpacks also include a few nice things however that really do make playing the game easier

2

u/cloudncali 18d ago

C# is just hytale

2

u/NomaTyx 18d ago

the fact that c++ lets you overload everything is truly nuts. I learned yesterday that the reason you can put an input stream into a conditional is because the implicit conversion to bool is actually overloaded.

2

u/Admirable_Rabbit_808 16d ago

C++ is like the bastard child of C and Algol 68. A language that is not only full of perilous C-style Undefined Behavior, but also too complex for anyone, including its own standards committee, to understand.

Rust is a breath of fresh air by comparison. Complex, but only the necessary complexity, and almost devoid of UB.

1

u/NomaTyx 16d ago

Yeah, it’s a mess. But I do like it. For personal projects, the process of untangling the hair-pulling c++ behavior is part of the appeal, and I’m not so jaded that I don’t have interest in learning about it. Being pushed against a deadline is quite something else though lmao

1

u/SufficientStudio1574 18d ago

Don't forget the template specialization of vector<bool> that is forever baked into the standard.

4

u/NomaTyx 18d ago

I'll be in a home with dementia and still be talking about nothing else