The latest summary from the PSR-14 Working Group: * We had short presentations/brain dumps on Java, Node, Python, and Ruby and what appears to be "state of the art" for event management in those ecosystems. * The big takeaway is that no one seems to be doing anything radically different than the general pattern in PHP, give or take quirks of each language. If anything, it appears PHP has a more robust event-dispatching- mediated-observer type ecosystem than anyone else, which is rather amusing. :-) * Of note, Node.js, despite being a largely asynchronous environment, uses synchronous events. It's up to each listener to kick its own body off to an async task if appropriate. The WG is strongly considering this as a viable approach for handling asynchronous event listeners for PSR-14. * Both Python and Node favor "arbitrary series of function arguments" over a defined event object. Java naturally uses a typed event object, as do most current PHP implementations (Drupal being the notable semi-exception.) The WG strongly favors a typed object at this point. * Node.js also has a feature where an exception in a listener gets turned into an "error event" automatically. This may be something to consider for PSR-14 but may also be left to implementers. TBD. * We spent a fair bit of time chewing on the question of listener ordering. There's a number of mechanisms in the wild in various languages and it's not clear yet what approach would be best for us to take, or if it would be better to punt entirely. TBD.
Next steps: * We'll be getting brief presentations on the state of the art in C# and Go in our next meeting to round-out the research. * Members of the WG are working on "must have" and "nice to have" lists to compare/defend at the next meeting. ATTENTION PROJECT REPS: If there is something your project views as a "must have" or "nice to have" for event dispatching, please reach out to the Editor (me, Larry) before 24 May. I'll aggregate those and present at the next meeting. --Larry Garfield, PSR-14 Editor -- You received this message because you are subscribed to the Google Groups "PHP Framework Interoperability Group" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/php-fig/1595657.a8VUaWGul2%40vulcan. For more options, visit https://groups.google.com/d/optout.
signature.asc
Description: This is a digitally signed message part.
