|Do you know where your variables are?|
My first programming "language" was DOS batch files. I stuck with that for a long time, charmed by how much can be done with so little. I looked to Perl when I was called upon to do some "real" programming, a couple of years ago, and then only because I was given a choice to use either Perl or Python. When I chose Perl as my first "real" language, it was the community that I chose, rather than the language per se. I knew that what I really needed was more than just a correct way to talk to a computer.
There are basic concepts that continue to be a struggle for me to grasp, even after over two years of using Perl almost every day. Perhaps I still have DOS customs, habitually looking for the ten-thousandth use of the foreach loop. But, the little bit I learn from any language I dabble in, I bring back to my use of Perl. That is the point I want to expand.
What I have in Perl first of all is a true ecclectic culture; and that is its greatest asset. I know that wasn't the first thing that came to mind, when you asked your question; but, it is the first reason that I would recommend Perl as a "first language". It is very perlish to love and even favor other languages. All around the Monastery, you'll hear Perl spoken with accents of Smalltalk and VB, lisp and bash, C and awk, caml and Delphi, algebra and gymnastics, theology and soup-chefery. These are not foreign accents. They each add to the richness of Perl, and in turn open a programmer-wannabe outward to the bigger world and all the branching diversity of ways that people are working to make the Machine more clever. Perl celebrates the frenetic world-genius that has brought forth all this buzz and chatter, and it is itself a faithful embodiment of that useful noise.
If other languages are like the buildings and the classrooms of a college, Perl is like the University experience, in which patterns of diverse learning begin to converge, where the joy of what you learn from all the lectures is discovered.
Perl is a good learning
language because, it's a language that never stops learning.
In reply to Re: Learning Perl as a First (programming) language