- Codice:
let rec subSets l =
match l with
| [] -> [[]]
| x :: xs -> let l = subSets xs in
l @ (List.map (fun y -> x :: y) l)
Non mi è chiaro cosa avvenga nella chiamata ricorsiva sulla coda della lista. Se riusciste a spiegarmelo a parole quello che avviene ve ne sarei davvero grato!