Errata
Submit your own errata for this product.
The errata list is a list of errors and their corrections that were found after the product was released. If the error was corrected in a later version or reprint the date of the correction will be displayed in the column titled "Corrected".
The following errata were submitted by our customers and approved as valid errors by the author or editor.
Color Key: Serious Technical Mistake Minor Technical Mistake Language or formatting error Typo Question
| Version | Location | Description | Submitted By | Corrected |
|---|---|---|---|---|
| Printed | Page 4 Fifth paragraph, first sentence |
Reads "Perl 9 tries to fill the gap", but should read "Perl tries to fill the gap". The 9 did not show up in the original sources or the QCs, but is in the book. Go figure. |
![]() brian d foy |
Oct 2008 |
| Printed | Page 4 Fifth paragraph, first sentence |
Reads "Perl 9 tries to fill the gap", but should read "Perl tries to fill the gap". The 9 did not show up in the original sources or the QCs, but is in the book. |
Anonymous | |
| Safari Books Online | 6.5 9th paragraph? The csh example of setting an environment variable |
the setenv example should not have an = for csh. Note from the Author or Editor: |
Anonymous | |
| Safari Books Online | 9.5.1 9th paragraph (using Safari) |
Note from the Author or Editor: |
Anonymous | |
| Safari Books Online | 13.14 Exercise #1 |
The last clause in the paragraph states: "but don't try show the contents." Note from the Author or Editor: |
Anonymous | |
| Printed | Page 27 last paragraph of Subsection "Scalar Variables" |
The first is on page 27, last paragraph of Subsection "Scalar Note from the Author or Editor: |
Anonymous | Oct 2008 |
| Printed | Page 27 4th paragraph |
"Scalar variables in Perl are always referenced with the leading $&." Note from the Author or Editor: |
Anonymous | Oct 2008 |
| Printed | Page 27 last paragraph of Subsection "Scalar Variables" |
The first is on page 27, last paragraph of Subsection "Scalar Note from the Author or Editor: |
Anonymous | |
| Printed | Page 30 the small example |
page 30, the small example. Note from the Author or Editor: |
Anonymous | Oct 2008 |
| Printed | Page 30 the small example |
If $meat has never recieved a variable, then $barney in Note from the Author or Editor: |
Anonymous | |
| Printed | Page 85 2nd footnote |
``use 5.6'' should read: ``use 5.006'' Note from the Author or Editor: |
Anonymous | |
| Printed | Page 95 paragraph 7, first sentence |
``http://www.stonehenge.com'' is not a hostname, ``www.stonehenge.com'' is... Note from the Author or Editor: |
Anonymous | |
| Printed | Page 111 2nd code snippet |
A copy/paste error from the 1st snippet on the same page: Note from the Author or Editor: |
Anonymous | |
| Printed | Page 112 last code example, right above "Alternatives" section heading |
Change Note from the Author or Editor: |
![]() brian d foy |
|
| Printed | Page 112 Last pattern-match code snippet |
The pattern /(.)(.)\g{-1}11/ will not be matched from the string "aa11bb". Note from the Author or Editor: |
Duane Klaming | |
| Printed | Page 128 last paragraph, second sentence |
``This may seem familiar, and for good reason: these automatic memory variables are what the pattern test program (from Chapter 7) was using in its line of "mystery" code, [...]'' Note from the Author or Editor: |
Anonymous | |
| Printed | Page 130 f. chapter ``Precedence'' |
The first paragraph talks about four levels of precedence. But then five levels are listed in the table and in the enumeration following it. Both level 4 and 5 are said to be "the lowest level" there... Note from the Author or Editor: |
Anonymous | |
| Printed | Page 142 4th paragraph, it's the first regex on the page. |
In the latest edition(5th) on this page, the example provided is: Note from the Author or Editor: |
Anonymous | |
| Printed | Page 165 second to last code example |
Change Note from the Author or Editor: |
![]() brian d foy |
|
| Printed | Page 175 2nd paragraph |
'... rather than the double colon we used with moreinfo="none">File::Basename' includes the extraneous markup 'moreinfo="none">'. Note from the Author or Editor: |
Anonymous | |
| Printed | Page 176 last code example |
Change Note from the Author or Editor: |
![]() brian d foy |
|
| Printed | Page 188 3rd paragraph |
On lines 3, 4 and 5, the text "The bitwise operator you'll need to use the bitwise operators. These are the operators that perform binary math operations on values." is interpolated and should be deleted. Note from the Author or Editor: |
Anonymous | Oct 2008 |
| Printed | Page 188 chapter "Bitwise Operators", first paragraph |
Sentences 2 and 4 are identical; sentence 3 is a mixture of sentences 5 and 1. Thus sentences 2 and 3 (or sentences 3 and 4) need to be deleted. Note from the Author or Editor: |
Anonymous | |
| Printed | Page 201 4th paragraph, first line |
There is a missing space in "ln-s"; it should be "ln -s". Note from the Author or Editor: |
Anonymous | Oct 2008 |
| Printed | Page 202 first paragraph, last sentence |
"it's a symlink, but it doesn't exist" Note from the Author or Editor: |
Anonymous | |
| Printed | Page 204 4th paragraph, second line |
"on directory per call" should be "one directory per call". Note from the Author or Editor: |
Anonymous | Oct 2008 |
| Printed | Page 204 4th paragraph |
"... it can only remove *one* directory per call:" Note from the Author or Editor: |
Anonymous | |
| Printed | Page 206 first paragraph, last line |
The text 'moreinfo="none">' at the beginning of the line appears to have been interpolated and should be deleted. Possibly this is a markup command with its leading "<" missing. Note from the Author or Editor: |
Anonymous | Oct 2008 |
| Printed | Page 206 1st paragraph |
'... same type of values returned from the moreinfo="none">stat function ...' includes the extraneous markup 'moreinfo="none">'. Note from the Author or Editor: |
Anonymous | |
| Printed | Page 206 section 13.14, Exercise #1 |
The last clause in the paragraph states: "but don't try show the contents" instead of "try to show" |
Anonymous | |
| Printed | Page 219 Code above Exercises |
The code doesn't sort correctly. In it family_name 'a' is compared to itself, and personal_name 'a' is being compared to family_name 'b'. Note from the Author or Editor: |
Rose Roberts | |
| Printed | Page 227 Example, bottom of page |
When discussing fallthroughs in given/when statements, it appears the bottom example on p227 does not behave as expected. e.g. if the program is run as Note from the Author or Editor: |
Martin Jackson | |
| Printed | Page 227 bottom example |
As Michael already stated in his unconfirmed errata, running the bottom example with Frederick as argument does a fall-through right down to the default case. This happens since the argument begins with Fred and the check is continued after matching to both fred and ^Fred, Frederick isn't equal to Fred so we continue to the default. Note from the Author or Editor: |
Tarik Ku | |
| Printed | Page 229 second when statement on the second example |
The books says Note from the Author or Editor: |
Anonymous | |
| Printed | Page 231 code sample in exercise 4 |
Change the line with foreach, which is missing a parenthesis. The new line should be have a left parenthesis after the .. Note from the Author or Editor: |
![]() brian d foy |
|
| Printed | Page 289 answer to excercise 2 (chapter 15) |
The excercise asks to print "Fizz", "Bin" and "Sausage", but the answer prints "fizz", "buzz" and "sausage" (Bin vs buzz, and also note the case...). Note from the Author or Editor: |
Anonymous | |
| Printed | Page 295 2nd paragraph line 3 and 3rd paragraph line 1 |
"also know as" instead of "also known as" Note from the Author or Editor: |
Tarik Ku |

