<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body dir="auto"><div><br></div><div>On <span class="" style="font-family: 'Helvetica Neue';">First, this is a </span><i class="" style="font-family: 'Helvetica Neue';">huge</i><span class="" style="font-family: 'Helvetica Neue';">&nbsp;breaking change, and it doesn’t really have to be one.&nbsp;The current SPM convention is to prefix C libraries with Lib. Following this convention, Dispatch (which is the C version) would be renamed to LibDispatch, and this new wrapper library would be called just Dispatch. With&nbsp;this setup, the old C api would&nbsp;still be there (under the module LibDispatch), which makes migration much easier. In the proposal, this issue is not addressed at all and it even says that <i class="">all code using libdispatch</i>&nbsp;would be affected. As it stands, that is not ok.</span><br></div><div>Separating existing dispatch from a new SwiftDispatch is a great idea. &nbsp;It would give the opportunity to really spend time working on the right approach for concurrency in swift without affecting existing production code and the hundreds of dispatch wrappers out there.</div><div><br></div><div>While we're on the subject: Dispatch Queues are 'queues' ... Isn't the right verb append (for asynchronous dispatch)?</div><div><br></div><div>DispatchQueue.main.append {</div><div>&nbsp; print("Hello Swift")</div><div>}</div><div><br></div><div>After all, asyncDispatch or dispatchAsync imply you are dispatching a synchronously - which you are not. &nbsp;The dispatch (sending for execution) is always synchronous, it's the execution which is asynchronous.</div><div><br></div><div>DispatchQueue.main.dispatchForAsynchronousExecution {</div><div>&nbsp; print("Help, I have repetitive strain injury")</div><div>}</div><div><br></div><div>Just my 2¢</div><div>Andrew.</div></body></html>