This is an automated archive made by the Lemmit Bot.

The original was posted on /r/rust by /u/03130393 on 2023-11-04 10:30:57.


Hello Rust community,

I am currently a C# developer. I love C#, it lets me be very productive without worrying too much about what’s going under the hood. I know C# gets lots of criticism because of many reasons but as far as I know async is not one of them. C# is either the first language or one of the first languages that introduced the async ergonomics and they did it masterfully. To my knowledge, it is still one of the languages with the best async support.

I used to like C++ a lot. I even used it at work professionally. But given the current state of the language, I don’t want to continue investing my time in C++. I think it is pointless. Many companies, especially the ones in big tech are jumping ship and adopting other languages such as Rust.

To be a well rounded developer, I want to be an expert in at least one langauge that compiles to machine code. (Let’s ignore C in this comparison.) Either I will continue honing my C++ skills or learn Rust from the ground up. One of my criteria is the async support of the language. As far as I know, Rust already has decent async support. C++ also introduced coroutines which enable true async. Asio seems to be at the top of the food chain in this ecosystem.

My question is, which of these langauges has the best async support that can come close to what C# offers? Are there any plans to improve async Rust so that it can compete with C# in terms of async support?

I already read the article here.

It seems like Rust async is very primitive and needs to improve a lot.

What are my options here? Am I spoiled by C# and expecting too much from these compiled (to machine code) languages?

Thank you.