// f : L -> L static L xtok_recurse(O f, L l) { l = (L) callF(f, l); for (int i = 1; i < l(l); i += 2) { O o = l.get(i); if (o instanceof L) l.set(i, xtok_recurse(f, (L) o)); } ret l; }