https://www.open-std.org/JTC1/SC22/WG21/docs/papers/2018/p13...
> While fibers may have looked like an attractive approach to write scalable concurrent code in the 90s, the experience of using fibers, the advances in operating systems, hardware and compiler technology (stackless coroutines), made them no longer a recommended facility.
If they go through with this, Zig will probably top out at "only as fast as Go", instead of being a true performance competitor. I at least hope the old std.fs sticks around for cases where performance matters.
In terms of ocaml and the authors concerns about continuation capturing and memory/performance, this is a good paper - http://manticore.cs.uchicago.edu/papers/pldi20-stacks-n-cont...
I think the _only_ thing the author didn't cover about concurrency is that "waiting for one of several things to complete" is a powerful primitive for concurrency that very few platforms provide direct access to. I.e. most async event loops are powered by OS primitives that allow such "heterogenous selects" and they are used under the hood but not exposed. I think Go's select, Tokio's equivalent, ConcurrentMLs/Racket more powerful choice operator. All of these allow expressing some nice patterns that other languages make impossible (sad Promise.race) or not user facing (cancellation in structured concurrency)
Great job!
I've since moved on to new employers, but I'd love to check it out again.
> It’s important to note that, if you’re using a non-commercial license, you cannot opt out of the collection of anonymous usage statistics. We use this information to improve our products.
Well, it's basically true for MS-branded VSCode too. I now use VSCodium.
But I'm heavily against Microsoft. I don't like usage statistics collection, but at least this is a direct competitor to Microsoft.
I had a chance to speak to some of the JetBrains folk at CppCon a couple years back. It was really nice and reassuring.
I'll check it out for personal projects and see if it's improved since years ago. :)
The fact of the matter is, I am not even using AI features much in my editor anymore. I've tried Copilot and friends over and over and it's just not _there_. It needs to be in a different location in the software development pipeline (Probably code reviews and RAG'ing up for documentation).
- I can kick out some money for a settings sync service. - I can kick out some money to essentially "subscribe" for maintenance.
I don't personally think that an editor is going to return the kinds of ROI VCs look for. So.... yeah. I might be back to Emacs in a year with IntelliJ for powerful IDE needs....