One can map over a list of lists of arbitrary depth as follows:
map :: (a -> b) -> [a] -> [b]
(map.map) :: (a -> b) -> [[a]] -> [[b]]
(map.map.map) :: (a -> b) -> [[[a]]] -> [[[b]]]
Is it possible to write a single function handling all such cases? Uiua has the ∵ each
function which does this on an array of arbitrary rank. Such functions are called pervasive functions in array languages.