Errata


Print Print Icon

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 xiv
para. -1, line 2

changed "Guido Van Rossum" to "Guido van Rossum"

Anonymous  Feb 2000
Printed Page xiv

At the top, did read:

http://www.sunlabs.com/people/john.ousterhout
now reads:
http://www.scriptics.com/people/john.ousterhout/

Anonymous  Feb 2000
Printed Page xxii
Clay Irving's Perl Reference web site has a new home at

http://reference.perl.com/ .

Also added updated contact info to "We'd Like to Hear From You" section.

Anonymous  Feb 2000
Printed Page xxiii
Moved the second-to-last para ("To all my friends ...")

to the end, as, "Finally, to all my friends, ...."
Also added comma after "encouraging words"

Anonymous  Feb 2000
Printed Page index
Additions

Brian Kernighan - p. xiv
MethodMaker - p. 132
query processing - p. 182

Anonymous  Feb 2000
Printed Page index
Changes

"malloc command" to "malloc function"
"nonnblocking" to "nonblocking"

Anonymous  Feb 2000
Printed Page xi
line 1:

An extra space between "two" and "goals" HAS BEEN DELETED.

Anonymous  Mar 2004
Printed Page xiv
line -2:

")." NOW READS ".)"

Anonymous  Mar 2004
Printed Page xv
bullet item 2:

A comma HAS BEEN INSERTED after "The Perl interpreter."

Anonymous  Mar 2004
Printed Page 2
para. 4, line 4:

"procedures" now reads "functions".

Anonymous  Nov 2000
Printed Page 2
para. 5, line 1:

"As we saw earlier, you" now reads "You."

Anonymous  Nov 2000
Printed Page 3
line 21:

"...we'll the study the..." NOW READS "...we'll study the..."

Anonymous  Mar 2004
Printed Page 5
last code example, line 4

changed "[$i]" to "[1]"

Anonymous  Feb 2000
Printed Page 6
code example 3, line 1: changed "$rh" to "$rhash"

Anonymous  Oct 1997
Printed Page 7
line 4: made the last "}" the correct font; also, in the last

line on the page, changed "x$rarray" to "$rarray"

Anonymous  Oct 1997
Printed Page 8
para. 3, line 2: changed "deference" to "dereference"

Anonymous  Dec 1997
Printed Page 9
both pieces of code:

The lines "sub AddArrays" and "sub GetNextLine" are not indented. Also, the
8-space tabs were changed to 4-space tabs.

Anonymous  Nov 2000
Printed Page 10
First code example: Changed comment to

# Call GetNextLine 100 times, and time it.

Anonymous  Feb 2000
Printed Page 11
Second code example from below.: Changed comment in 3rd line to

# reference to a reference to $a's value

Anonymous  Feb 2000
Printed Page 14
first para. after heading "Final Shortcut ...":

"identical" NOW READS "equivalent"

Anonymous  Mar 2004
Printed Page 15
line -4: changed "one of these string" to "one of these strings"

Anonymous  Sep 1997
Printed Page 21
line 5 under the header "Tcl":

"such as Perl's symbolic references" NOW READS "equivalent to Perl's symbolic references."

Anonymous  Mar 2004
Printed Page 22
4th para., line 2: changed "reminiscent to" to "reminiscent of"

Anonymous  Sep 1997
Printed Page 22
line 3: changed "copies" to "copy"

Anonymous  Oct 1997
Printed Page 26
The dot inside the formula is now a centered dot.

Anonymous  Nov 2000
Printed Page 26
line 3 in Example 2-2


my ($r_product); # Returing product by reference

now reads

my ($r_product); # Returning product by reference

Anonymous  Nov 2000
Printed Page 27
Last line of first paragraph, second to last line of paragraph 4, first line of paragraph 5:

Badly formatted arrows after "$r_mat" HAVE BEEN CORRECTED.

Anonymous  Mar 2004
Printed Page 29
first Code after "Representation"

Changed Name "Garibaldi" to "E. F. Schumacher"

Anonymous  Feb 2000
Printed Page 31
line -11 of example 2-4: changed "hourse" to "hours"

Anonymous  Sep 1997
Printed Page 31
code 1: added a new line after line 9 ("# by adding in the

day's "base hour" ...") that reads as follows:

$to = 19 if $to == 7;

also on 31: in what is now line 14 of the 1st code example, changed
"24" to "12" and "31" to "21"; in the second code example, line 8:
changed "office_hourse" to "office_hours"; finally, re-broke line 3 of
the first code example so that it breaks at the equals sign and line 4
begins with "($day_hours"

Anonymous  Oct 1997
Printed Page 31
example 2-4, line 12

changed
for $j ($i .. $#{$rl_courses}) {
to
for $j ($i+1 .. $#{$rl_courses}) {

Anonymous  Feb 2000
Printed Page 33
First line of code

... die "Could not open database: $:";
Changed "$:" to "$!"

Anonymous  Feb 2000
Printed Page 37

Resources: #1 http site now reads:

Available at
http://language.perl.com/info/documentation.html

Anonymous  Feb 2000
Printed Page 39
Fig 3.1:

symbol table entry should be "spud" not "spud::"

Anonymous 
Printed Page 39
In Figure 3.1,

Changed the symbol table entry from "Foo::" to "spud"

Anonymous  Feb 2000
Printed Page 40
next-to-last para.:

"A" was changed to Roman font.

Anonymous  Nov 2000
Printed Page 41
line 1:

"create new variable" NOW READS "create a new variable."

Anonymous  Mar 2004
Printed Page 42

code 2: last line now reads:

print @potato, "
"; # prints "idaho russet"

Anonymous  Dec 1997
Printed Page 47
The sample code fragment contained two comments erroneously

referring to '$&rs()'
now reads '&$rs()'

Anonymous  Feb 2000
Printed Page 49
para. 1:

"The simple answer to this solution is..." now reads "The simple solution to
this problem is..."

Anonymous  Nov 2000
Printed Page 50
line 1

"A #include" NOW READS "An #include".

Anonymous  Mar 2004
Printed Page 53
line 7

changed
$rsub->(10);
to
$rs->(10);

Anonymous  Feb 2000
Printed Page 55
para after first code block.

changed
"INT is a reserved string and"
to
"INT is a special string that"

Anonymous  Feb 2000
Printed Page 55
Last para, line 5

Changed "crash the system" to "crash the program"

Anonymous  Feb 2000
Printed Page 56
"Expression Plotting" is now a B-Head

Anonymous  Feb 2000
Printed Page 56
2nd line before Closures

changed "...procedures;" to "...procedure"

Anonymous  Feb 2000
Printed Page 56
2nd line after Closures

changed "...any other ways" to "...any other way"

Anonymous  Feb 2000
Printed Page 57
para. 2, line -2

The quotes around "$greeting" were mismatched. They HAVE BEEN CHANGED so that both are double quotes.

Anonymous  Mar 2004
Printed Page 61
top of page:

$rs = sub {

now reads:

my $rs = sub {

Anonymous  Nov 2000
Printed Page 62
line 10: changed "Even" to "Odd"

Anonymous  Oct 1997
Printed Page 63
example before heading "Closures Versus Objects"

changed
"$random_iter1()" and "$random_iter2()"
to
"&$random_iter1()" and "&$random_iter2()"

Anonymous  Feb 2000
Printed Page 66
first line:

48K NOW READS 32K.

Anonymous  Mar 2004
Printed Page 69
The first piece of code

Added quote at end of comment "Illegal division ...."

Anonymous  Feb 2000
Printed Page 69
Last para, last line: "eval" is now in Courier.

Anonymous  Feb 2000
Printed Page 75
2nd para from bottom

changed
If @patterns contains the three strings "^abc", "ghi", "efg$",
to
If @patterns contains the three strings "^foo", "bar$", "ghi",

Anonymous  Feb 2000
Printed Page 86
line line of 1st para.: changed "$::x." (quotes are in the

text) to "$::x"

Anonymous  Oct 1997
Printed Page 88
under "Load Path"

"Perl first looks for the file given to use or require in
the current directory and then looks up the @INC built-in
array to search the include paths."

now reads:

"Perl looks for the file given to use or require in the list
of directories specified in the built-in array, @INC."

Anonymous  Nov 2000
Printed Page 89
Last code block

changed
"Create a variable subroutine and subroutine..."
to
"Create a variable and a subroutine..."

Anonymous  Feb 2000
Printed Page 91
changed all instances of "Account" to "BankAccount" (2 in

code, one in text)

Anonymous  Oct 1997
Printed Page 91
second para:

"The BankAccount class can be" now reads "The BankAccount package can be."

Anonymous  Nov 2000
Printed Page 91
under "Importing Symbols", near the end of the section

"If the module uses @EXPORT instead of @EXPORT_OK, the user
gets all the exported symbols, regardless of whether they
were mentioned in the import list or not."

now reads:

"If the module uses @EXPORT instead of @EXPORT_OK, the user
gets all the exported symbols by default, unless the import
list specifies one or more symbols."

Anonymous  Nov 2000
Printed Page 92
line before Example 6-1:

"Example 6-1 shows one way to do write this subroutine."

NOW READS:
"Example 6-1 shows one way to write this subroutine."

Anonymous  Mar 2004
Printed Page 93
last line

changed
"The double colon gets translated to a filename"
to
"The double colon gets translated to a pathname"

Anonymous  Feb 2000
Printed Page 94
para. after first code block:

"Test::func" is now typeset in Courier.

Anonymous  Nov 2000
Printed Page 95
next-to-last para., line 2: changed "property is in" to

"property in"

Anonymous  Oct 1997
Printed Page 100
Line 3: "Nicklaus" is now "Niklaus"

Anonymous  Feb 2000
Printed Page 103
Line 5: "Not" is now "Note"

Anonymous  Feb 2000
Printed Page 103
paragraph after first code block

changed
"of the an object"
to
"of a class"

Anonymous  Feb 2000
Printed Page 106
Para after second code block

changed
"it is the Regular-Employee"
to
"it is RegularEmployee"

Anonymous  Feb 2000
Printed Page 106
In para. 5,

sentences 1 and 2 did read:
Both the :: and -> notations are in fact permissible, unlike in C++.
The first one is more flexible because Perl figures out the class at
run time, while the latter is faster because the function to be called
is known at compile time."
now read:
Both the -> and :: notations are in fact
permissible, unlike in C++.
(deleted sentence 2)

Anonymous  Feb 2000
Printed Page 108
First code line: "$record" is now "$details"

Anonymous  Feb 2000
Printed Page 114
"Can (function name)" had the open paren. in code and the close paren.

in body text; the situation was reversed at the top of page 115.
All the parens HAVE BEEN CHANGED and now all appear in code format.

134) line 7 in the second code example reads
# Strip it off its leading package name...

NOW READS:
# Strip off its leading package name...

Anonymous  Mar 2004
Printed Page 116
Last para

changed
"design is to use case analysis"
to
"design is to use Use Case Analysis"

Anonymous  Feb 2000
Printed Page 117
Figure 7-1:

"Moniter" should be "Monitor."

Anonymous 
Printed Page 118
line 14 (from the bottom)

changed
: $obj->{_price} - $obj->_rebate}
to
: $obj->{_price} - $obj->{_rebate}

Anonymous  Feb 2000
Printed Page 119
line 2:

"CDROM" was changed to bold.

Anonymous  Nov 2000
Printed Page 120
para about Tcl, last sentence: "incr Tcl" is now "[incr Tcl]"

Anonymous  Feb 2000
Printed Page 125
#2: line -2 of code

changed
$r_employee->position...
to
$emp->position...

Anonymous  Feb 2000
Printed Page 126
"'J'Joe'" is now "'Joe'"

Anonymous  Feb 2000
Printed Page 127
2nd line under figure: "@free" is now "@_free"

Anonymous  Feb 2000
Printed Page 127
next to last line on page: "@color" is now "@_color"

Anonymous  Feb 2000
Printed Page 128
First line of text after code

"@_ATTRIBUTES" is now "@_ATTRIBUTES_"

Anonymous  Feb 2000
Printed Page 129
first line after code (at top of page):

$$_[0] was fixed to it doesn't split across lines.

Anonymous  Nov 2000
Printed Page 130
code line 2: deleted AE ligature

Anonymous  Sep 1997
Printed Page 130
Code at top of page: second line

now reads:
# Or, $obj->set_attributes (['age', 'name'], [23, "sriram"])
sub set_attributes {

Anonymous  Feb 2000
Printed Page 131
line 8 of first code example

changed
local(*attributes) = *{"${pkg}::_ATTRIBUTES_"};
to
local (@attributes) = get_attribute_names($pkg);

Anonymous  Feb 2000
Printed Page 139

(139): footnote: changed "alternate" to "alternating"

Anonymous  Sep 1997
Printed Page 139
para. -3, line 2:

The -> NOW APPEARS in constant width font.

Anonymous  Mar 2004
Printed Page 140
middle column, first item: changed "TIE-SCALAR" to

"TIESCALAR", and in the third item of the same column, changed "65" to
"20"

Anonymous  Oct 1997
Printed Page 141
4th line from the bottom:

"Time::HiRes" NOW APPEARS in constant width font.

Anonymous  Mar 2004
Printed Page 141
last line:

"the Win32::Timer call" NOW READS "the Win32::Timer package."

Anonymous  Mar 2004
Printed Page 144
first para. after code:

This para. is redundant (although correct in intention) because STORE has not
been implemented in the preceding example.

Anonymous 
Printed Page 148
line 12: made "TIESCALAR" bold

Anonymous  Oct 1997
Printed Page 154
Serialization item, parenthetical at end:

"(making the structures cyclic ...)" now reads "(possibly making the
structures cyclic ...)"

Anonymous  Nov 2000
Printed Page 154
para. 1, line 4:

"in a slightly greater detail"

The "a" HAS BEEN DELETED.

Anonymous  Mar 2004
Printed Page 159
Para after "Record-Oriented Approach"

changed
"DBM is a disk-based hash table"
to
"DBM is a disk-based hash table library"

Anonymous  Feb 2000
Printed Page 160
code example 2, line 2: changed "fcntl" to "Fnctl"; also in

the 2nd line of the next-to-last text para., changed "multiwny" to
"multiway"

Anonymous  Oct 1997
Printed Page 162
Second para after first code block: "$DBI::err" and

"$DBI::errstr" are now typeset in Courier.

Anonymous  Feb 2000
Printed Page 162
Last piece of code

changed
$sth = $dbh->prepare('insert into emptable (name, age)
values (? , ?)';);
to
$sth = $dbh->prepare('insert into emptable (id, name, age)
values (?, ? , ?)';);

Anonymous  Feb 2000
Printed Page 162
changed

http://www.hermetica.com/technologia/DBI/
to
http://www.symbolstone.org/technology/perl/index.html

Anonymous  Feb 2000
Printed Page 166
line 2:

"select" is now in CW font with no italics.

Anonymous  Nov 2000
Printed Page 169
page header:

The page header just reads "f".

Anonymous 
Printed Page 170
first footnote:

"select clause" now reads "select command."

Anonymous  Nov 2000
Printed Page 171
Code after figure 11-1, line 5 and 9

changed
@ATTRIBUTES = qw(....);
to
attributes qw(....);

Anonymous  Feb 2000
Printed Page 171
Code at the bottom of page

changed
[Employee]
attributes = _id, name, age,
...
to
%g_attr_names = (
"Employee" => [qw(name age)]
"Department" => [qw(name address)]
);

Anonymous  Feb 2000
Printed Page 175
3rd line from bottom

Changed
"get/set_attributes"
to
"{get,set}_attributes"

Anonymous  Feb 2000
Printed Page 180
1st para. under "Storing objects":

"flush" NOW READS "flush()".

Anonymous  Mar 2004
Printed Page 181
3rd para, last line: "Retrieving Objects" is now a heading.

Anonymous  Feb 2000
Printed Page 184
last code block:

subroutine name "store" now typeset in bold.

Anonymous  Nov 2000
Printed Page 186
last code block:

subroutine name "retrieve_where" now typeset in bold.

Anonymous  Nov 2000
Printed Page 189
2nd para.: changed "Tannenbaum" to "Tanenbaum"

Anonymous  Oct 1997
Printed Page 192
first para., line 2:

"LocalHost" and "LocalPort" are now typeset in Courier.

Anonymous  Nov 2000
Printed Page 193
code example 1, line 2: changed "PeerHost" to "PeerAddr"

Anonymous  Oct 1997
Printed Page 193
code line 4

changed
... Proto => 'tcp',
to
... Proto => 'tcp'

Anonymous  Feb 2000
Printed Page 193
code line 9, after

print $sock "Msg $_ : How are you?
";
inserted the line
$sock->flush();

Anonymous  Feb 2000
Printed Page 193
Section "Sender", last line: Changed "sending ports" to "sending

sockets"

Anonymous  Feb 2000
Printed Page 194
Fourth para: Changed "a specified socket" to "any socket"

Anonymous  Feb 2000
Printed Page 194
#3: Changed "Make these calls nonblocking" to

"Make these sockets nonblocking"

Anonymous  Feb 2000
Printed Page 194
line 10 of code: Changed "unless ($sock)" to

"unless ($main_sock)"

Anonymous  Feb 2000
Printed Page 196
last code, lines 8 and 9

changed
($new_readable) = IO:Select->select($readable_handles,
undef, undef, 0);
to
($new_readable) = IO:Select->select($readable_handles,
undef, undef, undef);

Anonymous  Feb 2000
Printed Page 196
last code, line 11: Changed "to read from or write to" to

"to read from"

Anonymous  Feb 2000
Printed Page 197
first para, first parenthetical stmt:

"(or has an error" NOW READS "(or there's been an error".

Anonymous  Mar 2004
Printed Page 202
#2 in list at bottom: changed "Tannenbaum" to "Tanenbaum"

Anonymous  Oct 1997
Printed Page 206
second line of table, 2nd column:

"rcv_callback" now reads "rcv_cb" to match left hand side.

Anonymous  Nov 2000
Printed Page 206
Table 13-1, 2nd column

"rcv_callback" NOW READS "rcv_cb."

Anonymous  Mar 2004
Printed Page 208
list of attributes, description of "sock" is now

"The socket object (of the class IO::Socket::INET class)"

Anonymous  Feb 2000
Printed Page 208
Last entry in list

changed
"and bytes_to_read contains the bytes still expected"
to
"and bytes_to_read contains the number of bytes still expected"

Anonymous  Feb 2000
Printed Page 209
last code block, first large comment chunk:

"return only if there's an error" now reads "return immediately if there's an
error".

Anonymous  Nov 2000
Printed Page 212
line 10 of code

changed
$offset = length($msg) - 1;
to
$offset = length($msg);

Anonymous  Feb 2000
Printed Page 213
first paragraph, first word: changed "_read" to "_rcv"

Anonymous  Feb 2000
Printed Page 214
In lines 3 and 10

fcntl($_[0], ......)

NOW READS:
my $conn = shift;
fcntl($conn->{sock}, ......)

Anonymous  Mar 2004
Printed Page 214
last paragraph, last line:

"run" NOW APPEARS in Courier instead of Italic.

Anonymous  Mar 2004
Printed Page 217
last paragraph, last line:

"1" should be typeset in Courier.

Anonymous 
Printed Page 217
Code under comment "Server stuff", and again at bottom of page.

changed
RPC->new_rpc_server
to
RPC->new_server

Anonymous  Feb 2000
Printed Page 224-225
footnote marker on page 224 HAS BEEN MOVED and now appears on page 225.

Anonymous  Mar 2004
Printed Page 225
para. 2, line 1:

"contains the resize handles" now reads "is surrounded by the resize handles".

Anonymous  Nov 2000
Printed Page 227
last para:

"Once Perl/Tk is ported to the Windows and Mac" now reads "On Windows and the
Mac".

Anonymous  Nov 2000
Printed Page 231
code example 1, line 5: put single quotes around "line"

Anonymous  Oct 1997
Printed Page 232
code:

The code now says pi radians = 180 degrees.

Anonymous  Nov 2000
Printed Page 233
lines 2-3: "Guido Von Rossum" is now "Guide van Rossum"

Anonymous  Feb 2000
Printed Page 233
Section "Inserting text at absolute positions"

"column 5" is now "column 6".

Anonymous  Feb 2000
Printed Page 233,234
All code snippets involving insert(): The insert method on

the text widget requires the index to be the first parameter and then
the text. The code examples illustrating insert show the first and
second parameters in the reverse order.

So, each of these lines did read:

$t->insert ("Sample", "2.5")

$t->insert ("Sample", "end")

$t->insert ("Sample", "insert + 5")

$t->insert ("Sample", "insert linestart")

$t->insert('Sample', '3.5', 'foo');

and now reads:

$t->insert ("2.5", "Sample")

$t->insert ("end", "Sample")

$t->insert ("insert + 5", "Sample")

$t->insert ("insert linestart", "Sample")

$t->insert('3.5', 'Sample', 'foo');

Anonymous  Feb 2000
Printed Page 234
Third para from bottom: "and apply a section" is now "and

apply formatting"

Anonymous  Feb 2000
Printed Page 240
Figure 14-7:

"Maserati" spelled wrongly

Anonymous 
Printed Page 240
line 4: "[N$scrollbar]" is now "[$scrollbar]"

Anonymous  Feb 2000
Printed Page 241
Fig 14-8, caption:

"Celsuis" now reads "Celsius".

Anonymous  Nov 2000
Printed Page 241
line 12 of code:

The "." at the end of the line was removed.

Anonymous  Nov 2000
Printed Page 245
Figure 14-10:

The bottom-left annotation should read "...it expands the label to..."

Anonymous 
Printed Page 248
second para:

"bind" now typeset in Courier.

Anonymous  Nov 2000
Printed Page 250
The first code block, line 3

changed
my $key = shift
to:
my $key = pop

Anonymous  Feb 2000
Printed Page 251
4th line from bottom of code:

A missing close paren after !!!" HAS BEEN ADDED.

Anonymous  Mar 2004
Printed Page 256
First para, second line

"nullifies %block" is now "nullifies @block_cells"

Anonymous  Feb 2000
Printed Page 256
first paragraph: "addtag" is now typeset in Courier.

Anonymous  Feb 2000
Printed Page 256
first para, second line:

"nullifies %block_cells" NOW READS "nullifies @block_cells".

Anonymous  Mar 2004
Printed Page 260
code sample 2, line 2

changed
$w_top = MainWindow->new('Tetris - Perl/Tk');
to
$w_top = MainWindow->new(-title => 'Tetris - Perl/Tk');

Anonymous  Feb 2000
Printed Page 261
last paragraph:

"man perl" now typeset in Courier.

Anonymous  Nov 2000
Printed Page 274
line 9

changed
Employee *Create();
to
static Employee* Create();

Anonymous  Feb 2000
Printed Page 277
line before example 7-2 starts: changed "template files" to

"template file"

Anonymous  Oct 1997
Printed Page 278
Figure 17-2:

"parser()" should be "parse()" (2 instances).

Anonymous 
Printed Page 278
Figure 17-2:

"add_prop_list" should be "add_prop_list()".

Anonymous 
Printed Page 279
third para. from bottom, last line: changed "Sockets" to

"IO::Socket"

Anonymous  Oct 1997
Printed Page 280
first full para, first line:

"Ast::visit" NOW APPEARS in Courier font.

Anonymous  Mar 2004
Printed Page 282
table:

table mentions @IF @ELSE ... but code does not implement it.

Anonymous 
Printed Page 284
para. 2:

"open_file" NOW APPEARS in Courier instead of Italic font.

Anonymous  Mar 2004
Printed Page 285
3rd line from bottom: changed "-onlyIfDifferent" to

"-only_if_different"

Anonymous  Oct 1997
Printed Page 285
last line:

"foo" NOW APPEARS in Italic and not in Courier (it's a filename).

Anonymous  Mar 2004
Printed Page 289

Resource #1 now reads:

1. Berkeley yacc for Perl, available from CPAN under
src/misc/perl-byacc.tar.Z

Anonymous  Feb 2000
Printed Page 292
first para, next-to-last line:

"appropriate function deletes the memory" now reads "appropriate function
frees the memory".

Anonymous  Nov 2000
Printed Page 295
The title of Example 18-1 now reads "mandel.h" instead of "Mandel.h".

Anonymous  Nov 2000
Printed Page 296

line 4 of the last code example now reads:

'LIBS' => ['-L/usr/local/lib -lgd'], # Custom libraries to link with

Anonymous  Feb 2000
Printed Page 297
third para under "Fractals Using XS":

"OBJECT and LIB" now reads "OBJECT and LIBS".

Anonymous  Nov 2000
Printed Page 310
Last line under "Using the scripting language's power": last

sentence now reads:

The embedded interpreter approach is taken by the Apache Web
server [2].

Anonymous  Feb 2000
Printed Page 311
line 2 of last text para.:

"Unix" now reads "UNIX".

Anonymous  Nov 2000
Printed Page 315
paragraph before second code block, last line:

"nice_number" now typeset in Courier.

Anonymous  Nov 2000
Printed Page 316
Example 19-3 has the wrong comment format.

Anonymous 
Printed Page 316
last statement in code:

Change call to perl_close() to:

perl_destruct(my_perl);
perl_free(my_perl);
return 0;

Anonymous 
Printed Page 316

first code line: "main()" now reads:

int main(int argc, char **argv, char **env)

Anonymous  Feb 2000
Printed Page 317
last line: the final sentence now ends with

"www.apache.org/." (removed rest of sentence, as that URL
is obsolete. Note addition of final "/".)

Anonymous  Oct 1997
Printed Page 321
Figure 20-1:

Change "Symbol tabels" to "Symbol tables."

Anonymous 
Printed Page 321
first line after the header "Architecture":

"shaded rectangles" should be "dark shaded rectangles."

Anonymous 
Printed Page 322
last paragraph:

"there are other stacks to track temporary...and so on" now reads:

there are other stacks to track temporary variables
generated during computations, values for local variables,
loop iterators, the next opcode to execute on encountering last,
redo or return, and so on.

The words "last", "redo", and "return" are in Courier.

Anonymous  Nov 2000
Printed Page 324
first para of "Inside Opcodes":

"structure called op" now reads "structure called OP."

Anonymous  Nov 2000
Printed Page 328
last line before heading "Executor":

"denial of resource" now reads "denial of service."

Anonymous  Nov 2000
Printed Page 330
Table 20-1:

"SVTYPE" now reads "SvTYPE".

Anonymous  Nov 2000
Printed Page 330
description for "sv_isa":

"sv_isa" now typeset in Courier.

Anonymous  Nov 2000
Printed Page 332

line -5 of code: the call to create_envt_vars() now reads:

create_envt_vars(env);

Anonymous  Feb 2000
Printed Page 338
The entry for hv_iterinit is wrong. It says that hv_iterinit returns the

number of entries, but it only returns xhv_fill.

Anonymous 
Printed Page 339
Figure 20-5:

xhv_keys should have "5" next to it, not "6".

Anonymous 
Printed Page 343
table 20-5, Description for perl_get_cv: the second sentence

now reads:
You should always set create to FALSE, because a TRUE value
automatically creates a blank CV if the subroutine is not present,
which is useless to an application writer.

Anonymous  Feb 2000
Printed Page 343
table 20-5, Description for perl_call_sv

changed
"(Yes, you'll need to cast the CV to an SV.)"
to
"(Yes, you'll need to cast the CV* to an SV*.)"

Anonymous  Feb 2000
Printed Page 347
sub new() near bottom of page:

not really a bug, but a matter of style (unnecessarily using global variables)

Insert

my ($rs_increment, $rs_abc);

after the line:

my $abc = 10;

Anonymous 
Printed Page 349
last line: inner set of parens was deleted, to make

MAGIC *m = mg_find(sv,'~');

Anonymous  Feb 2000
Printed Page 354
description of XSRETURN_NO:

"undef" now typeset in Courier.

Anonymous  Nov 2000
Printed Page 359
First para after code, line 3

changed
"would not be an issue for ANSI C or C++ compilers"
to
"would not be an issue for C++ compilers"

Anonymous  Feb 2000
Printed Page 359
Last piece of code,

changed
for (; *ret; ret++, i++) {
XPUSHs (sv_2mortal(newSVpv(*ret, 0)));
}
free (ret);

to
char **p = ret;
for (; *p; p++, i++) {
XPUSHs (sv_2mortal(newSVpv(*p, 0)));
}
free(p)

Anonymous  Feb 2000
Printed Page 366
last line:

"SWIG" now typeset in default font.

Anonymous  Nov 2000
Printed Page 371
final paragraph

The Tolkien poem is missing the second verse:

"The road goes ever on and on
Down from the door where it began
Now far ahead the road has gone[...]"

INDEX:

"variables/Varable suicide" should be "variables/Variable suicide"


"stores procedures" should be "stored procedures."



Anonymous 
Printed Page 371
#4: Deleted the sentence "Works only on Unix".

Anonymous  Feb 2000
Printed Page 374-375
Button/command, Radiobutton/command, and Checkbutton/command:

"is released over the button" now reads "is clicked over the button" in all
three instances.

Anonymous  Nov 2000
Printed Page 379
Entry/sel.first:

"Indicates the first and last character of a tag"

NOW READS:
"Indicates the first and last character of the selection range."

Anonymous  Mar 2004
Printed Page 383
Table A-11 caption: Removed "(in addition to Table 8-1)"

Anonymous  Feb 2000
Printed Page 386
#2, Array References, line 2

changed
"# reference to anon. scalar"
to
"# reference to anonymous array"

Anonymous  Feb 2000
Printed Page 389
#17, line 3 of code

changed
create(String n, int age): _name(n), _age ......
to
Employee(String n, int age): _name(n), _age ......

Anonymous  Feb 2000
Printed Page 390
#18, line 2 of code

"Employee->new" is now "Employee->create"

Anonymous  Feb 2000
Printed Page 391
last line, comment: "if it supports method "foo"" is now

"if it supports method "bar""

Anonymous  Feb 2000