Handbook
Glossary
flattener ( seq quot -- seq vector quot' )
Vocabulary
compiler
.
utilities
Inputs
seq
an
object
quot
an
object
Outputs
seq
an
object
vector
an
object
quot'
an
object
Definition
USING:
arrays
combinators.short-circuit
kernel
sequences
vectors
;
IN:
compiler.utilities
:
flattener
( seq quot -- seq vector quot' )
over
length
<vector>
[
dup
'[
@
[
dup
{
[
array?
]
[
vector?
]
}
1||
[
_
push-all
]
[
_
push
]
if
]
when*
]
]
keep
;
inline