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

Reply via email to