On Monday, 29 June 2020 at 18:29:54 UTC, Russel Winder wrote:
On Mon, 2020-06-29 at 12:41 +0000, Paulo Pinto via Digitalmars-d-announce
wrote:
[…]

Concepts, coroutines, and modules are already in ISO C++20.

Only once the standard is voted in.  :-)

Also ranges are in I believe.

And co-routines are in a much better story than the incompatible runtimes currently existing for Rust async/await story.

I have not used C++ co-routines, but having used Rust co-routines, they seem fine. You need to make good on your negative criticism – which I would like to hear.


Rust has only standardized part of the async/await story, the asynchronous runtime is not part of the standard library, so currently it is impossible to write code that works flawlessly across the existing runtimes.

https://stjepang.github.io/2020/04/03/why-im-building-a-new-async-runtime.html

Additionally there are still rough edges with lifetimes across async/await calls.


Rust still needs to improve a lot on its tooling and ecosystem to cover many of the scenarios we use C++ for, even if is safer.

I can believe that may be true for others, but for me JetBrains CLion, Rustup, and Cargo make for an excellent environment. crates.io works very well – better than CLion, CMake, and lots of manual hacking around to get libraries for C++.

The typical scenarios where we would use GPGPU shaders, iDevices, Android and Windows drivers, Arduino, SYCL, DPC++, Unreal, XBox/PS/Switch SDKs, ...


Already the fact that it lacks an ISO standard is a no go in many domains.

That is a choice for those organisations. I am guessing those organisations do not use Java, D, Python, etc.

Java has a standard to guide for, updated for each language release.

So it doesn't need to be ISO, can be ECMA, or some other formal writen specification, with multiple vendor implementations.


I guess you mean using Python as glue for GPGU libraries written in C++.

In C, but yes. Though I haven't done it in a while now.


Reply via email to