public static void FuncListAp2(FuncList <Func <int, Func <int, int> > > funcs, FuncList <int> args1, FuncList <int> args2, IEnumerable <int> expected) { var res = args2.Ap(args1.Ap(funcs)); Assert.Equal(expected, res as IEnumerable <int>); }