Is C++ still useful for new projects or has it been deprecated in favor of Rust?

Is C++ still useful for new projects or has it been deprecated in favor of Rust?

Attached: ISO_C++_Logo.svg.png (1822x2048, 109.99K)

Other urls found in this thread:

doc.rust-lang.org/std/primitive.i32.html#method.max_value
twitter.com/AnonBabble

Learn Ada, faggot.

There's a lot of money to be made in most languages if you're not a retard

Nobody writes serious software in rust

C++ will still be around long after Rust userbase hits its expiry date. If they average 28 years old, then that means Rust has approximately 2 years left.

It feels almost dirty to say, but I'm enjoying the progress of Rust much more than the pace of the C++ council trying to pull their ass out of feature and refactoring creep.

Rust has been deprecated by C and C++ for any relevant project over 60 years ago

Yes.

Rust still has major issues in expressivity. Ask again after they fix const generics and GATs and add variadic generics.

>C++ still useful for new projects
>new projects

No, unless there's a powerful library written in C++ that you can piggyback off of to make your life easier

Last I checked (libgnat's) Remove_Dir still shits itself if it finds a symlink to a directory.
I will learn Ada once it's mature for Unix programming. Until then it's Rust or maybe C++.

>and add variadic generics
Ooof. I use them a lot in C++.

I'd agree up until they pooped out the steaming pile that is async/await

>const generics
Tried to use that a few days ago in rust and found that you couldn't make the const itself a generic.
What the fuck.
Of course I'm going to need to do that why would you bother implementing that WITHOUT support for it? Even worse that they seem to have dusted their hands off and called it a day for const generics after that. I can find no indication that there's work on actually fixing that.

Yes, especially if you work with integrated systems. C is still the main language used there but C++ is gaining ground at a rapid pace.
Also Rust's user base will start dropping like flies whenever they hit their 30's and realize they won't ever look like women.

>they seem to have dusted their hands off and called it a day for const generics after that
Not at all, there's tons of work left to be done. You can't even use for loops yet. Const generics are considered a work in progress.
In practice you can usually just call a function instead of accessing the const directly, or you can put an associated const on a trait. So it's not as high-priority as some of the other missing const generic features.

There were similar workarounds before types could have associated consts: doc.rust-lang.org/std/primitive.i32.html#method.max_value
They solved it in the end. Took a while though.

>is esolang #4451 replacing the main language with 98% market share for its uses?

Nothing about E0770 seeming to be in any of the roadmaps, is my issue.
>In practice you can usually just call a function instead of accessing the const directly
In my case I've implemented custom serialization logic where I want a generic const for the terminating sequence of a stream. I can't just pass in a variable since its a Deserialize/Serialize implementation in serde and I don't have a mechanism pass data down to the deserializer aside from the type that's being deserialized.

This but PL/I (premier industry language used everywhere) vs C (toy language made by castration-obsessed Multics dropouts for outdated hardware)

Like this?
trait MyDataTrait {
const TERMINATOR: &'static [u8];
}

struct SomeStreamingFormat;

impl MyDataTrait for SomeStreamingFormat {
const TERMINATOR: &'static [u8] = b"something";
}

What I was doing that ended up triggering the error was (something like) this:
pub struct TerminatedVec(Vec);

The idea being that I can then do..
struct Nigger {
arr: TerminatedVec
}

To hint to serde how the data needs to be serialized (without having to define a type and implement a deserializer for every single permutation of type and terminator my vendor has seen fit to use).
I'd just make the terminator an &[u8] but you can't peak in serde so my type needs to be valid both as the terminator and a sequence element.

I'm a tourist so I hope I don't muck up the formatting of this post.

Honestly, I was just exposed to RUST the other day. Had to be in a zoom for how to write modules for the linux kernel in RUST. I feel quite violated.

RUST is the most hideous pile of crap I've ever seen. All the worst of Java, C++, python and Basic wrapped into a bastard child that can only loosely be called a "language". There is 100% absolutely no doubt that it is being pushed for the sole purpose of creating even bigger and buggier software for more and more backdoors into any system inane enough to use it.

RUST - kill it with fire.