… | |
… | |
38 | programming (waiting for I/O or timer events) without subscribing to a |
38 | programming (waiting for I/O or timer events) without subscribing to a |
39 | religion, a way of living, and most importantly: without forcing your |
39 | religion, a way of living, and most importantly: without forcing your |
40 | module users into the same thing by forcing them to use the same event |
40 | module users into the same thing by forcing them to use the same event |
41 | model you use. |
41 | model you use. |
42 | |
42 | |
43 | For modules like POE or IO::Async (the latter of which is actually |
43 | For modules like POE or IO::Async (which is actually doing all I/O |
44 | named confusingly, as it does neither do I/O nor does it do anything |
|
|
45 | asynchronously...), using them in your module is like joining a |
44 | I<synchronously>...), using them in your module is like joining a |
46 | cult: After you joined, you are dependent on them and you cannot use |
45 | cult: After you joined, you are dependent on them and you cannot use |
47 | anything else, as it is simply incompatible to everything that isn't |
46 | anything else, as it is simply incompatible to everything that isn't |
48 | itself. |
47 | itself. |
49 | |
48 | |
50 | AnyEvent + POE works fine. AnyEvent + Glib works fine. AnyEvent + Tk |
49 | AnyEvent + POE works fine. AnyEvent + Glib works fine. AnyEvent + Tk |