Flatten a list: Difference between revisions

added Ol
(added Ol)
Line 2,569:
<pre>
[1, 2, 3, 4, 5, 6, 7, 8]
</pre>
 
=={{header|Ol}}==
<lang scheme>
(define (flatten x)
(cond
((null? x)
'())
((not (pair? x))
(list x))
(else
(append (flatten (car x))
(flatten (cdr x))))))
(print
(flatten '((1) 2 ((3 4) 5) ((())) (((6))) 7 8 ())))
</lang>
{{Out}}
<pre>
(1 2 3 4 5 6 7 8)
</pre>