The problem with filter chaining is the final assignment and the actual value are separated by the rest of the chain.
i.e. x = strList.filter(parseInt).sum() doesn't tell me what type x is till I read the whole line.
Whereas:
x = sum( parseInt(v) for v in strList ) tells me as quickly as possible that I'm dealing with a single value output that will be a sum.