in reply to Perl as a first language
Personally, I don't really think that Perl is a great language to teach and learn as the first language.
I've been brought up with (Turbo) Pascal, and I think that
first learning strict stuff (like, predeclaring your variables, predeclaring functions, strict count of parameters, strict typing) is very important. After you've learned that stuff, you can move over to the greener pastures of dynamic type conversion etc..
"Over" in the CS departement, they are nowadays teaching (eeeek) Python, and I think that Python is maybe a good start, since it's very strict in its requirements, and available for a lot of platforms. Note that I haven't written a single line of Python yet :)
There are other "toy" languages designed specific for learning programming, something in the style of Logo, maybe with another metaphor than the turtle :).