It's funny to see Haskell and TDD mentioned without QuickCheck http://www.haskell.org/haskellwiki/Introduction_to_QuickChec....
But, yes: referential transparency and functional (rather than sequential) composition make for a different refactoring model, one where eta expansion/contraction is the norm.
He does leave out the opportunity for more fluid refactorings: the lenPreviousLines function could be refactored in a more conventional way (changing the foldr of ((+).length) to a sum---which is a foldl---of a map, for example).