Spyke

Syndicated from the fediverse. Read and engage on the original instance.

View original on programming.dev

35 replies

The value of c is a large constant so I guess it's always meaningless.

1
csm10495reply
sh.itjust.works

Though if it's a signed number a large enough value can become a negative.

8

The "decades" part aside, I am pretty annoyed how they want experience with specific libraries for entry level positionsm

1

no that's the other c-and-four-lines, just arranged differently, the |||| are arranged in # for the garbage collected one, not ++

18
ThotDragonreply
lemmy.blahaj.zone

I may have missed the joke but C++ doesn't have built in garbage collector. Even recent versions of the standard merely allow it but don't specify it is required.

27

People have written garbage collectors for C++, but just about no one used the standard library support that was in the standard.

1
pelyareply
lemmy.world

More like garbage dispenser.

Pro C++ coders don't use delete, they call abort()

3

"Garbage collector" is a mechanism that collects garbage.

If it recycles the space of throws it into the specs isn't determined on the name.

1
parlaptiereply
feddit.org

Did you forget the /s or is this the tactic where you intentionally post wrong statements in order to get people to correct you so that you learn something?

C++ doesn't have a garbage collector

2
lemmy.zip

I think the "duhhh" is a pretty good stand-in for a sarcasm marker

26

A garbage collector is just a monoid in the category of endofunctors, what's the problem?

2
Ceasereply
mander.xyz

"WHeRe's DuH /s I CaN't KnOw If ITs a JoKe"

This isn't reddit, maybe use your brain instead of getting angry for not having reading comprehension skills lmao

-11

For some reason language designers and developers both seem to think languages should be HUGE. Fuck that. I prefer tiny languages. I don’t care if it doesn’t have generics. I don’t care if it doesn’t have a kitchen sink library. I just want the entire syntax to fit in my head.

1
lemmy.world

I watched an hour long video on why C++ sucks. I thought it wouldn't be too hard to pick up since I can program well in probably 7 languages. I was wrong, now I'm convinced C++ is a dumpster fire and needs to die and I'll never get a job in it unless someone holds a gun to my kid.

Edit: Actually two hours, but very fun (for people like me)

https://m.youtube.com/watch?v=7fGB-hjc2Gc

33

To be fair, an hour long video about why C++ sucks maybe isn't the best source if you're trying to get a balanced view.

I'll out myself: I kind of like C++. Yes, it definitely has its sharp edges, but I like how much you can do with it. You can do object oriented, functional, procedural, in fact there's not much it can't do. You can stay high level or you can go very low level (pretty much just drop into C if necessary). Yes, it's complex, but once you have a decent feel for it you can do a massive amount with it, especially with the newest versions. And that despite it running on bare metal without any VM or anything. Probably the most frustrating part for me is that the standard library is in many cases stuck with old C++ paradigms. But otherwise, I like C++.

23

Yeah, the video was mostly targeted at working with C++ in a large scale project with a bunch of legacy dependencies. He basically explains the reason why "decades to learn" is a reasonable statement in a nice way. I'm going to link the video if I find it.

1
sp3ctr4lreply
lemmy.dbzer0.com

Genuine question:

Would you have a reccomendation for a comparable alternative?

Like, I have experience with a good deal of scripting languages, sql variants... am currently trying to do Morton coding/interleaving for octrees in Godot.

I have the framework working in GDScript... theoretically, if its not performant enough, i could either attempt to transition it to C++ / GDExtension... or, potentially, I could do a 'Rustdot' type thing, apparently its possible to... do that.

So, while I am only really aware of Rust as a potential alternative to C++, in my specific context... would you have a broader opinion of lower level languages? I just actually don't know much about them.

2
Cavemanreply
lemmy.world

I mean, gdscript in godot is very nice and convenient. It offloads a lot of the heavy labor to the engine already and is very well optimised. If you need more speed and type safety C# is the logical next step. C# is very convenient and easy to pick up if you already know Typescript for being a strict language.

Also the guy's criticism of C++ is basically that nothing is bundled in and keeping libraries compatible with each other is a PhD level activity. The packages are also allowed to fuck with your code with macros, preprocessing directives etc. on top of being written in a non-compatible standard where they only provide a compiled binary with an ABI instead of giving you the source. Updating dependencies becomes a massive pain also because of the same reason since it can so easily break everything without any reasonable stack trace. You might say "Ok whatever, I'll just preprocess my C++ and rename all by variables" but dependencies can also break other dependencies with macros so there's no escape. One dep updates, another one breaks in an 100% unrelated part of the program.

But for a reasonably sized project where C++ dependencies are already handled by Godot it's not that bad. Especially if you're the only developer or have at least good codebase standards on what parts of C++ you will use. I've personally not had any issues programming in C++ but that's probably because I've never done anything at any scale whatsoever.

I don't have a strong opinion on lower level languages since I work in garbage collected languages but I've heard good things about Zig, heard Rust in slow-mo development with a steep learning curve but very robust, C is nice and simple but lacks modern features.

TL;DR C++ devs would kill to get something like cargo in Rust, not because it's a package manager but because it's a standard for sharing code and managing compatability. If that's not an issue for you C++ is a solid language like any other.

3

I don't have much to say in detail, other than 'thank you for the very well worded and thought out response!'

I will have have to chew on this for a while, I think, to fully grasp all of it, hah!

3

Just hope the gun isn't in c++ otherwise it will blow off the shooters hand too.

6

It's not discrimination if they give that as a reason for not liking you.

1

You reached the end

It's just C with two plus signs, how hard could it be? | Spyke