RosettaCodeData/Task/Flatten-a-list/Scheme/flatten-a-list.ss
Ingy döt Net db842d013d A-M baby
2013-04-10 21:29:02 -07:00

8 lines
245 B
Scheme

> (define (flatten x)
(cond ((null? x) '())
((not (pair? x)) (list x))
(else (append (flatten (car x))
(flatten (cdr x))))))
> (flatten '((1) 2 ((3 4) 5) ((())) (((6))) 7 8 ()))
(1 2 3 4 5 6 7 8)