I always think this is a nasty question :)
I tend to think a programming language is just the tool you use.
Try to learn to be a developer
, e.g. learn your design patterns
, and know when (not) to use them
Learn procedural and oo programming,
Learn methods to manage
your project, and try not to start typing code directly
When you create your program, the last thing to do is the actual coding, and if it's proper designed, it also takes the least time of it.
You should always look at the project itself, to see what language suits you the best for that moment, i'd suggest you to look beyond only learning a language.
When using Perl as your tool, you'll find out it can be rather fun to learn Perl
"We all agree on the necessity of compromise. We just can't agree on when it's necessary to compromise." - Larry Wall.