All those memes picturing C++ as unsafe and unstable yet the server that serves these memes is running mostly C/C++ and has an uptime of months.
Also they’re always treating C++ like it’s some arcane enterprise variant that uses 1990s C++
Using modern C++ you can write much cleaner, more usable, and really safe code
Lemmy is written in Rust. There might be bits of C at the periphery behind bindings.
They implemented some sort of OOP tho.
edit: I meant: the Linux devs implemented some sort of OOP in their C code in the kernel – is something i read forever ago.
yet the server that serves these memes is running mostly C/C++
Time to rewrite it in Rust!
/ducksandruns
In Java, it’s not called the Crackable
interface.
It’s the Nuttable
interface.
Provided your method specifies a strongly bound type you can ensure that you get your nut.
void dischargeNut(T extends Nut) { ... }
Rust is more like: unless you can mathematically prove to me that this is equivalent to a nut there is no ducking way I’ll ever let you compiled this.
And then still segfault
https://github.com/Speykious/cve-rs/blob/main/src/segfault.rs
Have you really used Rust or are you spreading FUD? I have not managed to cause even a single segfault in my 8 years of writing Rust code. Nor have I heard anyone else complaining about it, other than deliberately as proof of concept.
IME Rust programs crash at about the same rate as other languages. “Rewrite everything in Rust” hasn’t made much of a difference for me, so far.
To be fair, you are doing something wrong if you’re app segfaults no matter what anguage you wrote it in…
It actually is possible to segfault in safe Rust, although it is considered a bug. Proofs of concept are shown in this cve-rs crate.
If you want an explanation of why this happens, I recommend this video: https://youtu.be/vfMpIsJwpjU
Why are you getting downwoted man, getting segfaults in safe rust is on compiler not us. When you segfault in C and such it’s almost always your fault, if you manage to do that in rust it’s a bug in compiler.
I just dabbled in javascript again, and that description is spot on!
console.log(‘javascript operators are b’ + ‘a’ + + ‘a’ + ‘a’);
The only reason people use JS is because it’s the defacto language of browsers. As a language it’s dogshit filled with all kinds of unpleasant traps.
Here is a fun one I discovered the other day:
new Date('2022-10-9').toUTCString() === 'Sat, 08 Oct 2022 23:00:00 GMT'
new Date('2022-10-09').toUTCString() === 'Sun, 09 Oct 2022 00:00:00 GMT'
So padding a day of the month with a 0 or not changes the result by 1 hour. Every browser does the same so I assume this is a legacy thing. It’s supposed to be padded but any sane language would throw an exception if it was malformed. Not JavaScript.
Java: “Sorry, but the developers of Peanut
didn’t declare it to implement the Crackable
interface, even though it has all the relevant methods, so if you want to treat it like a nut your choices are write a wrapper class or call those methods using Reflections”
Swift’s extensions system has spoiled me, and I feel the pain of this whenever I have to write Java
Ditto, but Rust’s traits. God those are so fun. It’s like duck typing a la Python but you can just slap whatever methods you want on a foreign type without worrying about breaking anything because they’re only visible to the current crate (or other crates that import the Trait)