1) The top 1% of programmers will indeed go to the tools that make them the most productive, which are not necessarily the tools that happen to be currently most fashionable with the youngsters. Claims that Ruby is more productive than Perl are vaporware. Ruby did have an advantage for a while, but now Catalyst, RoR, and Django have now very similar feature sets (only you get CPAN as a bonus with Perl).
2) A language that is currently gaining momentum is not necessarily a language that will still have that momentum in 5, 10, or 20 years time. Perl popularity reached its peak years ago, then slowed down and has now settled and remained constant for a number of years. Given the kinds of mission critical applications that have been written and are still being written in Perl, with all my respect for Ruby (which I think is a fantastic language) I think it is a safe bet that in 20 years' time there will still be more Perl programmers than there will be Ruby programmers.
I think it is a safe bet that JavaScript (or whatever it becomes) will be more popular than Ruby, Python, PHP and Perl combined in 20 years time. And I think it will be popular on both the server-side and client-side.
But, making bets about technology 20 years out is a risky game. 20 years ago, there was no Java (and now it has come and gone as The Next Big Thing), JavaScript, PHP, Ruby, or Python. Perl was just getting started and Haskell was mostly just a gleam in some academic's eye. All of those techs are still on upward trajectories to varying degrees, and some rose faster than others, and some (Haskell, for example) have only recently started to see a burst of activity and interest.
In other words, I don't actually have any idea what's going to happen in languages, but I suspect that in 20 years, it probably won't be recognizable as anything we're using today. Because the languages most used today for new projects did not exist 20 years ago. But, I do have a lot of reasons for believing that JavaScript will slowly, but inevitably, become a dominant language for new applications on the server-side, just as it has become the dominant language on the client-side for new applications.
2) A language that is currently gaining momentum is not necessarily a language that will still have that momentum in 5, 10, or 20 years time. Perl popularity reached its peak years ago, then slowed down and has now settled and remained constant for a number of years. Given the kinds of mission critical applications that have been written and are still being written in Perl, with all my respect for Ruby (which I think is a fantastic language) I think it is a safe bet that in 20 years' time there will still be more Perl programmers than there will be Ruby programmers.