${wfid}
Sometimes it's useful to be clarify what's part of the variable name and what isn't, especially in strings. In this case, it wasn't needed but if it was ${wfid}_1.txt, it would be necessary.
file handler FILELIST adding members to $filelist
Not quite. FILELIST represents the file (given in $filelist) and the "foreach" loop is adding to the file identified by FILELIST. Maybe it's just semantics but that's the way I read it.
why is it preceded by &
Using the & for function calls is archaic and seriously deprecated. Is this code from Perl 4?