I read the documentation but cann;t find any clear explanation.
Boost.Function is the generalisation of function pointers to function-like objects, ie., to
callable objects.
Specifically in callback situations, but also in general, this enables homogeneous treatment of callable objects. Function objects offer the benefit of internal state compared to simple functions.