Beefy Boxes and Bandwidth Generously Provided by pair Networks
XP is just a number

Re: Learning Perl as a First (programming) language

by crenz (Priest)
on Aug 02, 2002 at 07:07 UTC ( #187010=note: print w/replies, xml ) Need Help??

in reply to Learning Perl as a First (programming) language

Wow -- what a nice topic.

Personally, I think that Perl is very suitable as a first language. Some reasons come to mind:

  • You don't have to trouble yourself with the difference between numbers, characters and strings (like e.g. in Java, Pascal, C)
  • Easy development environment -- a friend can just point you to a perl-highlighting editor and show you how to configure it to run perl. No need to learn a complex IDE. Plus short turn-around times.
  • Perl doesn't bug you with header files, libraries etc. (at least not in the beginning)
  • Type designations ($, @, %) help the beginner to remember what he is doing without having to learn Hungarian Notation ;-)
  • The human language considerations make easy perl quite understandable -- I think open or die is understood better than try {} catch{}, for example.
  • Perl's syntax is very complex -- but you only need a small subset to get going.
  • Perl has enough complexity to keep you going forever (unlike VB or Pascal)
  • There are a lot of applications -- Text manipulation, CGI etc. -- that help you to apply what you learn

In fact, the last point was the most important one for me. I got a perl book some years ago, but I started to do real programming only a few months after I got the book -- when I had a real CGI problem to solve. Of course, this is how we get all the insecure guestbooks etc., but hey, everybody starts out some time.

Beginners or not-so-advanced programmers might be freaked out by regular expressions, cryptish code, JAPHs etc. But you can actually learn the concept behing regexes very quickly (although it takes time to understand their limitations thoroughly!), and you can write good software in perl for years without using heavy syntactic sugar once.

Basically, perl allows you to choose the level where you want to be. Some people are comfortable at a more formal level. Others are more adventurous. Perl accomodates both.

All this leads me to the next question -- what would you consider good materials to teach beginners a usable subset of perl?

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://187010]
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others romping around the Monastery: (5)
As of 2023-12-01 16:05 GMT
Find Nodes?
    Voting Booth?

    No recent polls found