in reply to Question about POE

What you want to do sounds like it would work with POE just fine. You'd just have to use POE::Wheel::Run to execute the program, and set up events that get triggered when the program outputs anything. It's all very straightforward.

Contrary to flyingmoose's long and thoughtful post, I think POE make things much simpler, as long as you're doing something that POE is good at. For instance, the thought of "manually" writing a program that does fork/exec, then subsequently opens a socket and waits for commands to come in on the socket, which are then relayed to the external program... Just sounds like a nightmare. POE would make this relatively easy.

I'd say at least give it a try. POE::Wheel::Run is quite easy to use, and if you have any specific questions once you start using it, we can of course help you here at the Monastery. 8^)

Replies are listed 'Best First'.
Re: Re: Question about POE
by flyingmoose (Priest) on Feb 18, 2004 at 19:51 UTC
    I guess it depends on what domain you are coming from -- or developing software for. I did not mean to imply POE doesn't have it's place. Some of the IKC and timed event stuff looked pretty interesting to me. I don't like, however, how it has to use the wheels and filter to replace things most folks are used to...So it has plusses and minuses to me.

    In general, I wish it much success. It is certaintly very shiny to look at... but like any large scale stuff, it makes things too compilicated if applied to small scale projects :) The comments rocco made about not over-indulging in events is right on -- that's the trap I fell into -- it sort of became self-obfuscating for code that should have been straightforward.

    I'd like to see some philosophical discussion on how to "code POE in the style it was intended", but that's better suited for the Meditation section. Having some stylistic guides to programs significantly more complex than the material included in the POE cookbook would be much appreciated -- i.e. coordinating lots of interlocked things rather than dealing with one or two GUI components at a time. You know, insanely complicated middleware kind of stuff...

    Anyhow, in every medium (working on cars, whatever) -- there are some things you want to think about as a black box and other areas where you want the gory details. Chosing whether or not to use POE has a lot to do with how much you want to be in control of that particular detail. RAD or fine-tuning.

    POE is very nice, I do not intend to knock it...it's just a little funky and tends to shake things up a bit. (Which can often be a good thing!)