void applyToList(List L, Function F) { if (empty(L)) /* nothing to do here? */ else { head(L) = F(head(L)); applyToList(tail(L), F); } }