When I'm doing FP, rather than making a long chain, I assign at each step, then call the next one. As you've shown above. Sometimes I even comment on why the code is doing stuff.
Making it read as a list of steps, helps me understand what it's doing a little easier than that long chain.