in reply to Regarding speed: Is elsif or just if faster?

The answer to the literal question in your title is: if you need to ask, you shouldn't be using perl. * Taking into account the example in your post, you should probably use an array or hash lookup instead if you have a large (for some value of large) amount of tests:

my @lookup = ( sub { # condition 0 }, sub { # condition 1 }, sub { # condition 2 }, ... ); $lookup[$condition]->();
*) update: what I meant is; if the speed difference is relevant to your application you should be using a faster language - C for example.