3 ms·
> “which, of course, they never will be” That’s the problem. Apple knows by now that their developer community laps up absolutely everything they put out and r
by pavlov 6y ago
> “which, of course, they never will be”
That’s the problem. Apple knows by now that their developer community laps up absolutely everything they put out and regularly gets burned. (I’m old enough to have rewritten code for Cocoa Bindings in 2004. It’s the next big thing! And garbage collection in 2008. It will fix everything! And GCD... and...)
For such an enormous change as Swift, they should have switched off the reality distortion field, and gone with a more sober, more academic approach.
- Apocryphon 6y agoWhat's wrong with GCD?
- pavlov 6y agoIt's a great library for a lot of things. When originally introduced it was also heavily oversold by Apple as a magic bullet for concurrency. Here's one account: https://tclementdev.com/posts/what_went_wrong_with_the_libdispatch.html https://tclementdev.com/posts/what_went_wrong_with_the_libdi...
- astrange 6y agoThis page overstates the issues. Almost all the initial GCD design is still good, we just ended up with a lot more smaller low-core and non-SMP processors than expected. Also most of the performance issues are with excess parallelism (runnable threads), not concurrency (hiding IO latencies).
- favorited 6y agoAside from ObjC garbage collection, those things are all still good. Bindings enabled you to create things like complex editable tabular UI without writing any code. And the recommendations about how to use GCD efficiently have changed over the years, but it's still the foundational solution to concurrency on Darwin platforms (including being the basis for the new async/await runtime for Swift).