Used with flatMap, it's a terribly good way of doing something to everything over an arbitrary object and all it's deep values. I do something like this every month or so.
It's one of those tricks you use a lot once you've seen the problems it's applicable to.