The predicate clause is a limiting function on the number of probes that we want to instrument. In this case we only care about fork() calls that have a return value of greater than 0. (This happens when we are the parent and the call was successful. The return value will be the PID of the new child.)
This functionality could have been achieved using an if statement in the action block. The understanding is that this method is slightly more optimal Ð performance wise. When we can limit probe registration, such as specifying a PID in the probe definition line rather than the predicate, there can be a much more significant impact on performance.
D users will have a tendency to rely upon the predicate as this is the only place that D allows for this kind of logic. Vue provides for the capability to put a conditional (if) in the action block.