pub type FnPointer<A1, A2, Out> = HkFn<fn(A1, &A2) -> Out>;
pub struct FnPointer<A1, A2, Out>(/* private fields */);