Since v.5.5.8 there is a possibility for direct passing ad-hoc agent proxies to send-family functions. Just for comparision:
using namespace std::chrono;
so_5::send_to_agent< some_message >( a, ...);
so_5::send_delaye_to_agent< some_message >( a, milliseconds(50), ...);
so_5::send_periodic_to_agent< some_message >( a, milliseconds(50), milliseconds(50), ...);
so_5::send_to_agent< some_message >( a.direct_mbox(), ...);
so_5::send_delaye_to_agent< some_message >( a.direct_mbox(), milliseconds(50), ...);
so_5::send_periodic_to_agent< some_message >( a.direct_mbox(), milliseconds(50), milliseconds(50), ...);