moving away from message passing, to dirket calls