>
> First: PHP having native async support would be a huge step forward for
> the language. It's really exciting to see how this proposal develops.
>
>   Thank you for the kind words, it was awesome to read.

  I wonder if there are ways it can be split into smaller pieces, so that
> we don't overlook details in one part because our focus is drawn to another.



I can suggest the following workflow:

   1.

   *Approval of the core concept*: Changes affecting the language core.
   2.

   *Decision on the low-level API*: Async\wait + Resume + microtask. Should
   it be exposed to PHP developers or not? (I don’t have a definitive answer).
   This is a crucial point that impacts 30-40% of the code. If the decision is
   made to hide this API, the code will need to be adjusted.

Next, the RFC can be split into two parts:

   - *Low-level*: Basic PHP primitive functions + C API
   - *High-level*: Future, await, Channel, and maybe Pool.

So the process would be:
3. Approval of the *Low-level RFC*
4. Approval of the *High-level RFC*. Step 4 depends on Step 3 in terms of
implementation but is almost independent in terms of *semantics*. This
means it can be discussed separately and more freely.

Additionally, the *Low-level API* can be released independently, allowing
PHP extensions to adopt concurrency earlier.

As for function names, I really hope for your support in this matter
because it's far from trivial.

Thanks, Ed.

Reply via email to