in reply to If Perl was my first language...
I think it's not a matter of what language to learn but what language to use. Choose the languages as they fit your problem and don't be concerned if you don't get to learn a language you've always thought you'd need to know some day -- wait for the need to arise, if any such need should ever arise (that's why languages die, because nobody uses them, no matter how brilliant or sublime they might seem to their authors).
Of course, if we're not talking about critical life-and-death decisions here, but rather what to do in your spare time, then I would recommend the practical Java or C#.Net, obvious unbiquity candidates in the programming to come (While J2EE might not be so popular, XML Web services are definitely what the world is moving towards). Functional programming (lambda calculus and such) is so theoretical it might grab you too much and make you lose sight of what really matters -- getting things done. I sort of like to look at programming languages as some sort of image or text editor applications... they all help you do the same thing, they all change with time, while the only thing that sets them apart is the interface.