Improve example code
[p5sagit/p5-mst-13.2.git] / pod / perlintro.pod
index 5e5923d..210890f 100644 (file)
@@ -54,22 +54,28 @@ Alternatively, put this as the first line of your script:
 ... and run the script as C</path/to/script.pl>.  Of course, it'll need
 to be executable first, so C<chmod 755 script.pl> (under Unix).
 
+(This start line assumes you have the B<env> program. You can also put
+directly the path to your perl executable, like in C<#!/usr/bin/perl>).
+
 For more information, including instructions for other platforms such as
 Windows and Mac OS, read L<perlrun>.
 
 =head2 Safety net
 
-Perl by default is very forgiving. In order to make it more roboust
-it is recommened to start every program with the following lines:
+Perl by default is very forgiving. In order to make it more robust
+it is recommended to start every program with the following lines:
 
     #!/usr/bin/perl
     use strict;
     use warnings;
 
-The C<use strict;> line imposes some restrictions that will mainly stop
-you from introducing bugs in your code.  The C<use warnings;> is more or
-less equivalent to the command line switch B<-w> (see L<perlrun>). This will
-catch various problems in your code and give warnings.
+The two additional lines request from perl to catch various common
+problems in your code. They check different things so you need both. A
+potential problem caught by C<use strict;> will cause your code to stop
+immediately when it is encountered, while C<use warnings;> will merely
+give a warning (like the command-line switch B<-w>) and let your code run.
+To read more about them check their respective manual pages at L<strict>
+and L<warnings>.
 
 =head2 Basic syntax overview
 
@@ -363,7 +369,7 @@ You can also use C<while> in a post-condition:
 
 Exactly like C:
 
-    for ($i=0; $i <= $max; $i++) {
+    for ($i = 0; $i <= $max; $i++) {
         ...
     }
 
@@ -376,7 +382,7 @@ the more friendly list scanning C<foreach> loop.
         print "This element is $_\n";
     }
 
-    print $list[$_] foreach 1 .. $max;
+    print $list[$_] foreach 0 .. $max;
 
     # you don't have to use the default $_ either...
     foreach my $key (keys %hash) {
@@ -531,7 +537,7 @@ expressions.  These are documented at great length in L<perlre>, but for
 the meantime, here's a quick cheat sheet:
 
     .                   a single character
-    \s                  a whitespace character (space, tab, newline)
+    \s                  a whitespace character (space, tab, newline, ...)
     \S                  non-whitespace character
     \d                  a digit (0-9)
     \D                  a non-digit