4 ms·
> In my experience, people just don't know how to build multi-threaded software and programming languages haven't done all that much to support the paradigm. G
by DrBazza 2y ago
> In my experience, people just don't know how to build multi-threaded software and programming languages haven't done all that much to support the paradigm.
Go? Rust? Any functional language?
- hulitu 2y agoWriting multithreaded programs does not means that people know how to do this. Just fire up the Windows Process Explorer and look at the CPU graphs.
- torginus 2y agoGo just turned a bunch of library constructs (green threads, queues) into language keywords, many languages have the same stuff with a bit more involved syntax. Rust in my opinion, is the biggest admission of failure of modern multithreaded thinking, with having classes like 'X but single threaded' and 'X but slower but works with multiple threads', requiring a complex rewrite for the code to even compile. It's moving all the mental burden of threading to the programmer. CPUs have the ability to automatically execute non-dependent instructions in parallel, at the finest granularity. Yet if we take a look at a higher level, on the level of functions, and operational blocks of a program, there's almost nothing production grade that can say: Hey, you sort array A and B and then compare them, so lets run these 2 sorts in parallel.