FLATTEN inspects the top of the stack.
If it is a LIST of values,
it inspects each value and replaces each value which was a LIST with its content.
FLATTEN proceed recursively until all LISTs have been flattened.
If it is not a LIST, the function exits and let the stack in the same state.