in reply to Conditions and Function call

Yes, there are many other ways of doing this. Now, better is up to you (and the people who will be maintaining your code a year from now).

A few comments (in no particular order)

Before I give alternatives, I'm going to make a few assumptions:

  1. You are running this snippet in some loop. The various parameters can change, depending on conditions that the loop iteration will discover
  2. notify() (or whatever function(s) you might need to call) do not accept parameters.
  3. All these parameters are boolean (true or false).

Some options:

The first is a cleanup of your existing the code. The second is a way of parameterizing function calls. This isn't something only Perl can do. MUD code has been doing this since the late 80's, and that was (usually) written in C, using funcp's.

------
We are the carpenters and bricklayers of the Information Age.

Please remember that I'm crufty and crochety. All opinions are purely mine and all code is untested, unless otherwise specified.