// f: func(S) -> S static O funcToAnswerMethod(fO f) { if (f == null) null; ret new O { S answer(S s) { ret callF(f, s); } }; }