CPS::Future - compatibility wrapper around Future
This module provides a compatibility wrapper around Future. The code it used to contain was renamed to move it out of the
CPS distribution. Existing code that refers to
CPS::Future should be changed to use
$future->( @result )
This subclass overloads the calling operator, so simply invoking the future object itself as if it were a
CODE reference is equivalent to calling the
done method. This makes it simple to pass as a callback function to other code.
It turns out however, that this behaviour is too subtle and can lead to bugs when futures are accidentally used as plain
CODE references. See the
done_cb method instead. This overload behaviour will be removed in a later version.