Next-generation take on pre/post function hooks