// f : A -> O static mapLike printWith(O f, A a) { print(callF(f, a)); ret a; }