----- 1/07/17 ----- > Vorrei capire perche' applicando la procedura: > > (define two-tilings ; valore: lista di stringhe di o/ > (lambda (n) ; n: intero non negativo > (cond ((= n 0) null) > ((= n 1) (list "o")) > (else > (append > (map (lambda (x) (append (list "o") x)) (two-tilings (- n 1))) > (map (lambda (x) (append (list "<>") x)) (two-tilings (- n 2))) > )) > ))) > > [ p. es. (two-tilings 5) ] > > si verifica il seguente errore: > > append: last argument must be a list, but received "o" ----- Nel programma c'e' un po' di confusione fra liste e stringhe ("append" di liste o "string-append" di stringhe?) da un lato, lista vuota di soluzioni (cioe' nessuna soluzione: "null") o lista che contiene solo la stringa vuota dall'altro. ----- * -----