in reply to Re^2: Mixing asynchronous data feed with synchronous program flow control (in Raku)
in thread Mixing asynchronous data feed with synchronous program flow control

Have you considered POE? (Learning POE is on my to-do list.)

Or if other languages are an option and this needs to scale out to a large number of connections, have you considered Erlang/OTP? (Which, as I currently understand, effectively hides a multi-threaded event loop in the language runtime, but more-or-less forces you into a message-passing functional programming paradigm as a result. I have heard good things about it but have not yet used it for a non-trivial program myself.)

  • Comment on Re^3: Mixing asynchronous data feed with synchronous program flow control (in Raku)

Replies are listed 'Best First'.
Re^4: Mixing asynchronous data feed with synchronous program flow control (in Raku)
by Your Mother (Archbishop) on Jan 04, 2020 at 02:58 UTC

    Those are good thoughts. I did quite a bit of POE back in the day. I don’t think I’ve used it in… 15 years? Which, strangely enough, was the same time I tried to pick up some Erlang. I failed. :P Partly because that was exactly when Perl got back up with Catalyst, DBIC, Plack… So I stopped needing to branch out.

    POE isn’t a good match for the project. Javascript is probably the best fit for the stuff I’m trying to do right now with the explosion of promise/wait/async stuff in the core and Typescript and such. In fact, I rewrote a bunch of JS in Perl for my newest client because there is no Perl lib but plenty in other languages… :( The code is doing a LOT of other things though and I’m quite solid in Perl and a bit of a behind-the-times dilettante in JS. I’ve already prototyped something like 10 clients and a few dozen approaches and can jump in and out of testing approaches and such because of my familiarity with Perl… and I think it still is the best munging/prototyping language, maybe by a lot.