Write a recursive function that transforms a multi-dimensional array into a single-dimensional array.
flatten([[17.2, 500, "code"], "generate"]) ➞ [17.2, 500, "code", "generate"]
flatten([[[[[2, 14, "core"]]], 2, 3, 4]]) ➞ [2, 14, "core", 2, 3, 4]
flatten([["dimension"], "vertical", [["objective"]]]) ➞ ["dimension", "vertical", "objective"]
flatten([[[[[["construct"]]]]]]) ➞ ["construct"]