regcomp.c: Move [] inversion optimization
[perl.git] / pod / perlbook.pod
1 =head1 NAME
2
3 perlbook - Books about and related to Perl
4
5 =head1 DESCRIPTION
6
7 There are many books on Perl and Perl-related. A few of these are
8 good, some are OK, but many aren't worth your money. There is a list
9 of these books, some with extensive reviews, at http://books.perl.org/
10 . We list some of the books here, and while listing a book implies our
11 endorsement, don't think that not including a book means anything.
12
13 Most of these books are available online through Safari Books Online
14 ( http://safaribooksonline.com/ ).
15
16 =head2 The most popular books
17
18 The major reference book on Perl, written by the creator of Perl, is
19 I<Programming Perl>:
20
21 =over 4
22
23 =item I<Programming Perl> (the "Camel Book"):
24
25         by Larry Wall, Tom Christiansen, and Jon Orwant
26         ISBN 978-0-596-00027-1  [3rd edition July 2000]
27         http://oreilly.com/catalog/9780596000271/
28
29 =back
30
31 The Ram is a cookbook with hundreds of examples of using Perl to
32 accomplish specific tasks:
33
34 =over 4
35
36 =item I<The Perl Cookbook> (the "Ram Book"):
37
38         by Tom Christiansen and Nathan Torkington,
39             with Foreword by Larry Wall
40         ISBN 978-0-596-00313-5 [2nd Edition August 2003]
41         http://oreilly.com/catalog/9780596003135/
42
43 =back
44
45 If you want to learn the basics of Perl, you might start with the
46 Llama book, which assumes that you already know a little about
47 programming:
48
49 =over 4
50
51 =item I<Learning Perl>  (the "Llama Book")
52
53         by Randal L. Schwartz, Tom Phoenix, and brian d foy
54         ISBN 978-0-596-52011-3 [5th edition June 2008]
55         http://oreilly.com/catalog/9780596520113
56
57 =back
58
59 The tutorial started in the Llama continues in the Alpaca, which
60 introduces the intermediate features of references, data structures,
61 object-oriented programming, and modules:
62
63 =over 4
64
65 =item I<Intermediate Perl> (the "Alpaca Book")
66
67         by Randal L. Schwartz and brian d foy, with Tom Phoenix
68                 foreword by Damian Conway
69         ISBN 978-0-596-00478-1 [1st edition March 2006]
70         http://oreilly.com/catalog/9780596004781/
71
72 =back
73
74 =head2 References
75
76 You might want to keep these desktop references close by your keyboard:
77
78 =over 4
79
80 =item I<Perl 5 Pocket Reference>
81
82         by Johan Vromans
83         ISBN 978-0-596-00374-6 [4th edition July 2002]
84         http://oreilly.com/catalog/9780596003746/
85
86 =item I<Perl Debugger Pocket Reference>
87
88         by Richard Foley
89         ISBN 978-0-596-00503-0 [1st edition January 2004]
90         http://oreilly.com/catalog/9780596005030/
91
92 =item I<Regular Expression Pocket Reference>
93
94         by Tony Stubblebine
95         ISBN 978-0-596-51427-3 [July 2007]
96         http://oreilly.com/catalog/9780596514273/
97
98 =back
99
100 =head2 Tutorials
101
102 =over 4
103
104 =item I<Beginning Perl>
105
106         by James Lee
107         ISBN 1-59059-391-X [3rd edition April 2010]
108         http://www.apress.com/book/view/1430227931
109
110 =item I<Learning Perl>
111
112         by Randal L. Schwartz, Tom Phoenix, and brian d foy
113         ISBN 978-0-596-52010-6 [5th edition June 2008]
114         http://oreilly.com/catalog/9780596520106
115
116 =item I<Intermediate Perl> (the "Alpaca Book")
117
118         by Randal L. Schwartz and brian d foy, with Tom Phoenix
119                 foreword by Damian Conway
120         ISBN 0-596-10206-2 [1st edition March 2006]
121         http://oreilly.com/catalog/9780596102067
122
123 =item I<Mastering Perl>
124
125         by brian d foy
126         ISBN 978-0-596-10206-7 [1st edition July 2007]
127         http://www.oreilly.com/catalog/9780596527242
128
129 =item I<Effective Perl Programming>
130
131         by Joseph N. Hall, Joshua A. McAdams, brian d foy
132         ISBN 0-321-49694-9 [2nd edition 2010]
133         http://www.effectiveperlprogramming.com/
134
135 =back
136
137 =head2 Task-Oriented
138
139 =over 4
140
141 =item I<Writing Perl Modules for CPAN>
142
143         by Sam Tregar
144         ISBN 1-59059-018-X [1st edition August 2002]
145         http://www.apress.com/book/view/159059018X
146
147 =item I<The Perl Cookbook>
148
149         by Tom Christiansen and Nathan Torkington
150             with foreword by Larry Wall
151         ISBN 1-56592-243-3 [2nd edition August 2003]
152         http://oreilly.com/catalog/9780596003135
153
154
155 =item I<Automating System Administration with Perl>
156
157         by David N. Blank-Edelman
158         ISBN 978-0-596-00639-6 [2nd edition May 2009]
159         http://oreilly.com/catalog/9780596006396
160
161 =item I<Real World SQL Server Administration with Perl>
162
163         by Linchi Shea
164         ISBN 1-59059-097-X [1st edition July 2003]
165         http://www.apress.com/book/view/159059097X
166
167 =back
168
169 =head2 Special Topics
170
171 =over 4
172
173 =item I<Regular Expressions Cookbook>
174
175         by Jan Goyvaerts and Steven Levithan
176         ISBN 978-0-596-52069-4 [May 2009]
177         http://oreilly.com/catalog/9780596520694
178
179 =item I<Programming the Perl DBI>
180
181         by Tim Bunce and Alligator Descartes
182         ISBN 978-1-56592-699-8 [February 2000]
183         http://oreilly.com/catalog/9781565926998
184
185 =item I<Perl Best Practices>
186
187         by Damian Conway
188         ISBN: 978-0-596-00173-5 [1st edition July 2005]
189         http://oreilly.com/catalog/9780596001735
190
191 =item I<Higher-Order Perl>
192
193         by Mark-Jason Dominus
194         ISBN: 1-55860-701-3 [1st edition March 2005]
195         http://hop.perl.plover.com/
196
197 =item I<Mastering Regular Expressions>
198
199         by Jeffrey E. F. Friedl
200         ISBN 978-0-596-52812-6 [3rd edition August 2006]
201         http://oreilly.com/catalog/9780596528126
202
203 =item I<Network Programming with Perl>
204
205         by Lincoln Stein
206         ISBN 0-201-61571-1 [1st edition 2001]
207         http://www.pearsonhighered.com/educator/product/Network-Programming-with-Perl/9780201615715.page
208
209 =item I<Perl Template Toolkit>
210
211         by Darren Chamberlain, Dave Cross, and Andy Wardley
212         ISBN 978-0-596-00476-7 [December 2003]
213         http://oreilly.com/catalog/9780596004767
214
215 =item I<Object Oriented Perl>
216
217         by Damian Conway
218             with foreword by Randal L. Schwartz
219         ISBN 1-884777-79-1 [1st edition August 1999]
220         http://www.manning.com/conway/
221
222 =item I<Data Munging with Perl>
223
224         by Dave Cross
225         ISBN 1-930110-00-6 [1st edition 2001]
226         http://www.manning.com/cross
227
228 =item I<Mastering Perl/Tk>
229
230         by Steve Lidie and Nancy Walsh
231         ISBN 978-1-56592-716-2 [1st edition January 2002]
232         http://oreilly.com/catalog/9781565927162
233
234 =item I<Extending and Embedding Perl>
235
236         by Tim Jenness and Simon Cozens
237         ISBN 1-930110-82-0 [1st edition August 2002]
238         http://www.manning.com/jenness
239
240 =item I<Pro Perl Debugging>
241
242         by Richard Foley with Andy Lester
243         ISBN 1-59059-454-1 [1st edition July 2005]
244         http://www.apress.com/book/view/1590594541
245
246 =back
247
248 =head2 Free (as in beer) books
249
250 Some of these books are available as free downloads.
251
252 I<Higher-Order Perl>: http://hop.perl.plover.com/
253
254 I<Writing Perl Modules for CPAN>: http://www.apress.com/resource/freeebook/9781590590188
255
256 =head2 Other interesting, non-Perl books
257
258 You might notice several familiar Perl concepts in this collection of
259 ACM columns from Jon Bentley. The similarity to the title of the major
260 Perl book (which came later) is not completely accidental:
261
262 =over 4
263
264 =item I<Programming Pearls>
265
266         by Jon Bentley
267         ISBN 978-0-201-65788-3 [2 edition, October 1999]
268
269 =item I<More Programming Pearls>
270
271         by Jon Bentley
272         ISBN 0-201-11889-0 [January 1988]
273
274 =back
275
276 =head2 A note on freshness
277
278 Each version of Perl comes with the documentation that was current at
279 the time of release. This poses a problem for content such as book
280 lists. There are probably very nice books published after this list
281 was included in your Perl release, and you can check the latest
282 released version at http://perldoc.perl.org/perlbook.html .
283
284 Some of the books we've listed appear almost ancient in internet
285 scale, but we've included those books because they still describe the
286 current way of doing things. Not everything in Perl changes every day.
287 Many of the beginner-level books, too, go over basic features and
288 techniques that are still valid today. In general though, we try to
289 limit this list to books published in the past five years.
290
291 =head2 Get your book listed
292
293 If you're Perl book isn't listed and you think it should be, let us know.
294
295 =cut