News for hackers. Stuff that matters.
Re:The Case of a Leaky Goroutine by sapiogram on Monday March 25, 2024 @06:40PM (#39822055)
Javascript is even better, by not having multithreading at all. I am not joking, Go is much worse than Java and C#, but Javascript and Rust are the only mainstream languages where I've seen non-experts reliably write correct concurrent code. Maybe it's true for langauges like Elixir as well, but I haven't tried.
Re:The Case of a Leaky Goroutine by pdimitar on Monday March 25, 2024 @09:48PM (#39823478)
It's 95% true for Elixir as well; it's very difficult to mess up parallelization or just leave a system in an incoherent state with it. Immutability and message passing help a lot.
Re:The Case of a Leaky Goroutine by masklinn on Tuesday March 26, 2024 @01:22AM (#39824487)
My experience of JavaScript is nowhere near that good.

While it does not have parallelism, the concurrency is as unrestricted as it is in go, forgetting awaits is a very common issue leading to wild tasks running unbounded and unchecked, and when you need any other synchronisation mechanism you have to write them yourself and they’re tricky indeed.

$dayjob’s JS team keeps chasing concurrency issues, and breaking builds because of them.