/* Returned list in reverse order */ cons_cell *reverse(cons_cell *list){ if (list == NULL) return NULL; else return append(reverse(tail(list)), cons(head(list), NULL)); }