Currently values which are returned from event handlers are ignored.
(For future compatibility we recomend you just return from your handlers)

Except for 'trap' and 'stop' event.
Return TRUE value to signal debugger it should stop here.
Return FALSE value to signal debugger it should not stop here.
If your handler returns empty list as FALSE value then default action occur.
Currently we stop if not values are received:

    @trap =  (1)   unless @trap;

This allows us to have conditional breakpoints. How it works? You just define
breakpoint by setting DB::traps( $f )->{ $l } ( see cmd_breakpoint debugger command ).
Then when the execution of your program reaches a point that hold a
breakpoint, the DB::DB() subroutine is called. You check condition for this
breakpoint and decide to stop or continue your program

If your event handler return CODEREF This CODEREF will be invoked with same
arguments as current handler

If you event handler wanna to evaluate some expressions in user context it should
return ARRAYREF with expressions to evaluate. Zero item in this array should
be CODEREF which will be invoked with list of evalutation results

Because the result of expression can be a list each result is wrapped into []

return [
	sub {
		my( $fcall, $expr ) =  @_;
		...
	},
	"f1()", "$x+7"
]

where $fcall is [ eval "f1()" ];
where $expr  is [ eval "$x+7" ];
