Hello,
I'm CPAN user KHEDIN, and I recently came up with a module which I'd
like to release to the public (after consulting local mailing list).
However, I'm not sure about how to name it.
Here's what I've got:
When developing (and therefore writing tests and fire-and-forget
scripts) for AnyEvent I routinely end up with a boilerplate like this:
my $cv = AnyEvent->condvar;
my $timer = AnyEvent->timer( after => 10, cb => sub { $cv->croak("Timeout"); });
do_something(
on_success => sub{ $cv->send(@_); },
on_error => sub{ $cv->croak(shift); },
);
my $result = $cv->recv();
undef $timer;
analyze_do_something( $result );
I finally got fed up with it and wrote a module with the following
interface:
my $result = ae_recv {
do_something(
on_success => ae_send,
on_error => ae_croak,
);
} 10; # timeout
analyze_do_something( $result );
The module's current name is AE::AdHoc, however it's not clear what this
means.
I wouldn't like to have Test in name because it's not only useful for
tests, and does not test AnyEvent itself as AnyEvent::Test::* would
imply.
The last think I came up with was AnyEvent::SendRecv - is it clear what
it does?
I would appreciate any help here.
--
With best regards, Konstantin S. Uvarin
jabber:[email protected]
+7 (903) 266-26-25