Commit | Line | Data |
68dc0745 |
1 | =head1 NAME |
2 | |
109f0441 |
3 | perlfaq2 - Obtaining and Learning about Perl |
68dc0745 |
4 | |
5 | =head1 DESCRIPTION |
6 | |
7 | This section of the FAQ answers questions about where to find |
92c2ed05 |
8 | source and documentation for Perl, support, and |
68dc0745 |
9 | related matters. |
10 | |
b68463f7 |
11 | =head2 What machines support perl? Where do I get it? |
68dc0745 |
12 | |
b68463f7 |
13 | The standard release of perl (the one maintained by the perl |
5e3006a4 |
14 | development team) is distributed only in source code form. You |
109f0441 |
15 | can find the latest releases at http://www.cpan.org/src/README.html . |
5e3006a4 |
16 | |
17 | Perl builds and runs on a bewildering number of platforms. Virtually |
b68463f7 |
18 | all known and current Unix derivatives are supported (perl's native |
87275199 |
19 | platform), as are other systems like VMS, DOS, OS/2, Windows, |
c355f4f4 |
20 | QNX, BeOS, OS X, MPE/iX and the Amiga. |
5e3006a4 |
21 | |
109f0441 |
22 | Binary distributions for some proprietary platforms can be found |
23 | http://www.cpan.org/ports/ directory. Because these are not part of |
24 | the standard distribution, they may and in fact do differ from the |
25 | base perl port in a variety of ways. You'll have to check their |
26 | respective release notes to see just what the differences are. These |
27 | differences can be either positive (e.g. extensions for the features |
28 | of the particular platform that are not supported in the source |
29 | release of perl) or negative (e.g. might be based upon a less current |
30 | source release of perl). |
92c2ed05 |
31 | |
b68463f7 |
32 | =head2 How can I get a binary version of perl? |
68dc0745 |
33 | |
109f0441 |
34 | (contributed by brian d foy) |
35 | |
36 | ActiveState: Windows, Linux, Mac OS X, Solaris, AIX and HP-UX |
322be77c |
37 | |
38 | http://www.activestate.com/ |
39 | |
109f0441 |
40 | Sunfreeware.com: Solaris 2.5 to Solaris 10 (SPARC and x86) |
322be77c |
41 | |
42 | http://www.sunfreeware.com/ |
43 | |
109f0441 |
44 | Strawberry Perl: Windows, Perl 5.8.8 and 5.10.0 |
65acb1b1 |
45 | |
109f0441 |
46 | http://www.strawberryperl.com |
47 | |
48 | IndigoPerl: Windows |
65acb1b1 |
49 | |
109f0441 |
50 | http://indigostar.com/ |
3fe9a6f1 |
51 | |
b68463f7 |
52 | =head2 I don't have a C compiler. How can I build my own Perl interpreter? |
3fe9a6f1 |
53 | |
54 | Since you don't have a C compiler, you're doomed and your vendor |
55 | should be sacrificed to the Sun gods. But that doesn't help you. |
56 | |
3bc3c5be |
57 | What you need to do is get a binary version of C<gcc> for your system |
3fe9a6f1 |
58 | first. Consult the Usenet FAQs for your operating system for |
59 | information on where to get such a binary version. |
60 | |
109f0441 |
61 | You might look around the net for a pre-built binary of Perl (or a |
ee891a00 |
62 | C compiler!) that meets your needs, though: |
63 | |
c195e131 |
64 | For Windows, Vanilla Perl ( http://vanillaperl.com/ ) and Strawberry Perl |
109f0441 |
65 | ( http://strawberryperl.com/ ) come with a |
ee891a00 |
66 | bundled C compiler. ActivePerl is a pre-compiled version of Perl |
67 | ready-to-use. |
68 | |
109f0441 |
69 | For Sun systems, SunFreeware.com provides binaries of most popular |
ee891a00 |
70 | applications, including compilers and Perl. |
71 | |
b68463f7 |
72 | =head2 I copied the perl binary from one machine to another, but scripts don't work. |
68dc0745 |
73 | |
74 | That's probably because you forgot libraries, or library paths differ. |
75 | You really should build the whole distribution on the machine it will |
76 | eventually live on, and then type C<make install>. Most other |
77 | approaches are doomed to failure. |
78 | |
79 | One simple way to check that things are in the right place is to print out |
3bc3c5be |
80 | the hard-coded C<@INC> that perl looks through for libraries: |
68dc0745 |
81 | |
f0d19b68 |
82 | % perl -le 'print for @INC' |
68dc0745 |
83 | |
a6dd486b |
84 | If this command lists any paths that don't exist on your system, then you |
68dc0745 |
85 | may need to move the appropriate libraries to these locations, or create |
3bc3c5be |
86 | symbolic links, aliases, or shortcuts appropriately. C<@INC> is also printed as |
65acb1b1 |
87 | part of the output of |
88 | |
89 | % perl -V |
68dc0745 |
90 | |
c355f4f4 |
91 | You might also want to check out |
13a2d996 |
92 | L<perlfaq8/"How do I keep my own module/library directory?">. |
3fe9a6f1 |
93 | |
68dc0745 |
94 | =head2 I grabbed the sources and tried to compile but gdbm/dynamic loading/malloc/linking/... failed. How do I make it work? |
95 | |
96 | Read the F<INSTALL> file, which is part of the source distribution. |
65acb1b1 |
97 | It describes in detail how to cope with most idiosyncrasies that the |
3bc3c5be |
98 | C<Configure> script can't work around for any given system or |
68dc0745 |
99 | architecture. |
100 | |
101 | =head2 What modules and extensions are available for Perl? What is CPAN? What does CPAN/src/... mean? |
102 | |
e573f903 |
103 | CPAN stands for Comprehensive Perl Archive Network, a multi-gigabyte |
104 | archive replicated on hundreds of machines all over the world. CPAN |
105 | contains source code, non-native ports, documentation, scripts, and |
106 | many third-party modules and extensions, designed for everything from |
68dc0745 |
107 | commercial database interfaces to keyboard/screen control to web |
e573f903 |
108 | walking and CGI scripts. The master web site for CPAN is |
c355f4f4 |
109 | http://www.cpan.org/ and there is the CPAN Multiplexer at |
e573f903 |
110 | http://www.cpan.org/CPAN.html which will choose a mirror near you via |
111 | DNS. See http://www.perl.com/CPAN (without a slash at the end) for |
112 | how this process works. Also, http://mirror.cpan.org/ has a nice |
113 | interface to the http://www.cpan.org/MIRRORED.BY mirror directory. |
c355f4f4 |
114 | |
e573f903 |
115 | See the CPAN FAQ at http://www.cpan.org/misc/cpan-faq.html for answers |
116 | to the most frequently asked questions about CPAN including how to |
117 | become a mirror. |
68dc0745 |
118 | |
3bc3c5be |
119 | C<CPAN/path/...> is a naming convention for files available on CPAN |
68dc0745 |
120 | sites. CPAN indicates the base directory of a CPAN mirror, and the |
e573f903 |
121 | rest of the path is the path from that directory to the file. For |
68dc0745 |
122 | instance, if you're using ftp://ftp.funet.fi/pub/languages/perl/CPAN |
3bc3c5be |
123 | as your CPAN site, the file C<CPAN/misc/japh> is downloadable as |
68dc0745 |
124 | ftp://ftp.funet.fi/pub/languages/perl/CPAN/misc/japh . |
125 | |
e573f903 |
126 | Considering that, as of 2006, there are over ten thousand existing |
127 | modules in the archive, one probably exists to do nearly anything you |
3bc3c5be |
128 | can think of. Current categories under C<CPAN/modules/by-category/> |
e573f903 |
129 | include Perl core modules; development support; operating system |
130 | interfaces; networking, devices, and interprocess communication; data |
131 | type utilities; database interfaces; user interfaces; interfaces to |
132 | other languages; filenames, file systems, and file locking; |
133 | internationalization and locale; world wide web support; server and |
134 | daemon utilities; archiving and compression; image manipulation; mail |
135 | and news; control flow utilities; filehandle and I/O; Microsoft |
136 | Windows modules; and miscellaneous modules. |
68dc0745 |
137 | |
c355f4f4 |
138 | See http://www.cpan.org/modules/00modlist.long.html or |
e573f903 |
139 | http://search.cpan.org/ for a more complete list of modules by |
140 | category. |
c355f4f4 |
141 | |
e573f903 |
142 | CPAN is a free service and is not affiliated with O'Reilly Media. |
c355f4f4 |
143 | |
68dc0745 |
144 | =head2 Is there an ISO or ANSI certified version of Perl? |
145 | |
146 | Certainly not. Larry expects that he'll be certified before Perl is. |
147 | |
148 | =head2 Where can I get information on Perl? |
149 | |
87275199 |
150 | The complete Perl documentation is available with the Perl distribution. |
151 | If you have Perl installed locally, you probably have the documentation |
5a964f20 |
152 | installed as well: type C<man perl> if you're on a system resembling Unix. |
153 | This will lead you to other important man pages, including how to set your |
3bc3c5be |
154 | C<$MANPATH>. If you're not on a Unix system, access to the documentation |
a6dd486b |
155 | will be different; for example, documentation might only be in HTML format. All |
b68463f7 |
156 | proper perl installations have fully-accessible documentation. |
68dc0745 |
157 | |
158 | You might also try C<perldoc perl> in case your system doesn't |
3bc3c5be |
159 | have a proper C<man> command, or it's been misinstalled. If that doesn't |
160 | work, try looking in C</usr/local/lib/perl5/pod> for documentation. |
68dc0745 |
161 | |
9e72e4c6 |
162 | If all else fails, consult http://perldoc.perl.org/ which has the |
163 | complete documentation in HTML and PDF format. |
68dc0745 |
164 | |
ac9dac7f |
165 | Many good books have been written about Perl--see the section later in |
166 | L<perlfaq2> for more details. |
68dc0745 |
167 | |
65acb1b1 |
168 | Tutorial documents are included in current or upcoming Perl releases |
a6dd486b |
169 | include L<perltoot> for objects or L<perlboot> for a beginner's |
170 | approach to objects, L<perlopentut> for file opening semantics, |
171 | L<perlreftut> for managing references, L<perlretut> for regular |
172 | expressions, L<perlthrtut> for threads, L<perldebtut> for debugging, |
173 | and L<perlxstut> for linking C and Perl together. There may be more |
9e72e4c6 |
174 | by the time you read this. These URLs might also be useful: |
65acb1b1 |
175 | |
9e72e4c6 |
176 | http://perldoc.perl.org/ |
c355f4f4 |
177 | http://bookmarks.cpan.org/search.cgi?cat=Training%2FTutorials |
65acb1b1 |
178 | |
87275199 |
179 | =head2 What are the Perl newsgroups on Usenet? Where do I post questions? |
68dc0745 |
180 | |
04d666b1 |
181 | Several groups devoted to the Perl language are on Usenet: |
68dc0745 |
182 | |
109f0441 |
183 | comp.lang.perl.announce Moderated announcement group |
184 | comp.lang.perl.misc High traffic general Perl discussion |
185 | comp.lang.perl.moderated Moderated discussion group |
186 | comp.lang.perl.modules Use and development of Perl modules |
187 | comp.lang.perl.tk Using Tk (and X) from Perl |
68dc0745 |
188 | |
04d666b1 |
189 | Some years ago, comp.lang.perl was divided into those groups, and |
190 | comp.lang.perl itself officially removed. While that group may still |
191 | be found on some news servers, it is unwise to use it, because |
192 | postings there will not appear on news servers which honour the |
193 | official list of group names. Use comp.lang.perl.misc for topics |
194 | which do not have a more-appropriate specific group. |
83a70550 |
195 | |
04d666b1 |
196 | There is also a Usenet gateway to Perl mailing lists sponsored by |
197 | perl.org at nntp://nntp.perl.org , a web interface to the same lists |
198 | at http://nntp.perl.org/group/ and these lists are also available |
199 | under the C<perl.*> hierarchy at http://groups.google.com . Other |
200 | groups are listed at http://lists.perl.org/ ( also known as |
201 | http://lists.cpan.org/ ). |
202 | |
6670e5e7 |
203 | A nice place to ask questions is the PerlMonks site, |
04d666b1 |
204 | http://www.perlmonks.org/ , or the Perl Beginners mailing list |
205 | http://lists.perl.org/showlist.cgi?name=beginners . |
83a70550 |
206 | |
207 | Note that none of the above are supposed to write your code for you: |
208 | asking questions about particular problems or general advice is fine, |
209 | but asking someone to write your code for free is not very cool. |
68dc0745 |
210 | |
211 | =head2 Where should I post source code? |
212 | |
65acb1b1 |
213 | You should post source code to whichever group is most appropriate, but |
214 | feel free to cross-post to comp.lang.perl.misc. If you want to cross-post |
215 | to alt.sources, please make sure it follows their posting standards, |
216 | including setting the Followup-To header line to NOT include alt.sources; |
f224927c |
217 | see their FAQ ( http://www.faqs.org/faqs/alt-sources-intro/ ) for details. |
68dc0745 |
218 | |
c355f4f4 |
219 | If you're just looking for software, first use Google |
23bec515 |
220 | ( http://www.google.com ), Google's Usenet search interface |
197aec24 |
221 | ( http://groups.google.com ), and CPAN Search ( http://search.cpan.org ). |
0bc0ad85 |
222 | This is faster and more productive than just posting a request. |
5a964f20 |
223 | |
68dc0745 |
224 | =head2 Perl Books |
225 | |
c98c5709 |
226 | A number of books on Perl and/or CGI programming are available. A few |
6670e5e7 |
227 | of these are good, some are OK, but many aren't worth your money. |
c98c5709 |
228 | There is a list of these books, some with extensive reviews, at |
9e72e4c6 |
229 | http://books.perl.org/ . If you don't see your book listed here, you |
230 | can write to perlfaq-workers@perl.org . |
68dc0745 |
231 | |
5e3006a4 |
232 | The incontestably definitive reference book on Perl, written by |
9e72e4c6 |
233 | the creator of Perl, is Programming Perl: |
68dc0745 |
234 | |
c98c5709 |
235 | Programming Perl (the "Camel Book"): |
c2e66d9e |
236 | by Larry Wall, Tom Christiansen, and Jon Orwant |
c98c5709 |
237 | ISBN 0-596-00027-8 [3rd edition July 2000] |
c2e66d9e |
238 | http://www.oreilly.com/catalog/pperl3/ |
c98c5709 |
239 | (English, translations to several languages are also available) |
68dc0745 |
240 | |
5e3006a4 |
241 | The companion volume to the Camel containing thousands |
c355f4f4 |
242 | of real-world examples, mini-tutorials, and complete programs is: |
5e3006a4 |
243 | |
c98c5709 |
244 | The Perl Cookbook (the "Ram Book"): |
c355f4f4 |
245 | by Tom Christiansen and Nathan Torkington, |
c2e66d9e |
246 | with Foreword by Larry Wall |
c98c5709 |
247 | ISBN 0-596-00313-7 [2nd Edition August 2003] |
248 | http://www.oreilly.com/catalog/perlckbk2/ |
68dc0745 |
249 | |
8fc9651a |
250 | If you're already a seasoned programmer, then the Camel Book might |
9e72e4c6 |
251 | suffice for you to learn Perl. If you're not, check out the |
8fc9651a |
252 | Llama book: |
5e3006a4 |
253 | |
9e72e4c6 |
254 | Learning Perl |
255 | by Randal L. Schwartz, Tom Phoenix, and brian d foy |
256 | ISBN 0-596-10105-8 [4th edition July 2005] |
257 | http://www.oreilly.com/catalog/learnperl4/ |
8fc9651a |
258 | |
16073f15 |
259 | And for more advanced information on writing larger programs, |
260 | presented in the same style as the Llama book, continue your education |
261 | with the Alpaca book: |
262 | |
ac9dac7f |
263 | Intermediate Perl (the "Alpaca Book") |
264 | by Randal L. Schwartz and brian d foy, with Tom Phoenix (foreword by Damian Conway) |
265 | ISBN 0-596-10206-2 [1st edition March 2006] |
c98c5709 |
266 | http://www.oreilly.com/catalog/lrnperlorm/ |
16073f15 |
267 | |
f224927c |
268 | Addison-Wesley ( http://www.awlonline.com/ ) and Manning |
269 | ( http://www.manning.com/ ) are also publishers of some fine Perl books |
8fc9651a |
270 | such as I<Object Oriented Programming with Perl> by Damian Conway and |
271 | I<Network Programming with Perl> by Lincoln Stein. |
c355f4f4 |
272 | |
273 | An excellent technical book discounter is Bookpool at |
274 | http://www.bookpool.com/ where a 30% discount or more is not unusual. |
5a964f20 |
275 | |
68dc0745 |
276 | What follows is a list of the books that the FAQ authors found personally |
277 | useful. Your mileage may (but, we hope, probably won't) vary. |
278 | |
c2e66d9e |
279 | Recommended books on (or mostly on) Perl follow. |
68dc0745 |
280 | |
13a2d996 |
281 | =over 4 |
68dc0745 |
282 | |
5a964f20 |
283 | =item References |
68dc0745 |
284 | |
c98c5709 |
285 | Programming Perl |
c2e66d9e |
286 | by Larry Wall, Tom Christiansen, and Jon Orwant |
287 | ISBN 0-596-00027-8 [3rd edition July 2000] |
288 | http://www.oreilly.com/catalog/pperl3/ |
68dc0745 |
289 | |
c98c5709 |
290 | Perl 5 Pocket Reference |
291 | by Johan Vromans |
109f0441 |
292 | ISBN 0-596-00374-9 [4th edition July 2002] |
293 | http://www.oreilly.com/catalog/perlpr4/ |
87275199 |
294 | |
5a964f20 |
295 | =item Tutorials |
c47ff5f1 |
296 | |
7678cced |
297 | Beginning Perl |
298 | by James Lee |
299 | ISBN 1-59059-391-X [2nd edition August 2004] |
300 | http://apress.com/book/bookDisplay.html?bID=344 |
301 | |
c98c5709 |
302 | Elements of Programming with Perl |
c2e66d9e |
303 | by Andrew L. Johnson |
ed8cf1fe |
304 | ISBN 1-884777-80-5 [1st edition October 1999] |
ac9dac7f |
305 | http://www.manning.com/johnson/ |
c2e66d9e |
306 | |
c98c5709 |
307 | Learning Perl |
9e72e4c6 |
308 | by Randal L. Schwartz, Tom Phoenix, and brian d foy |
109f0441 |
309 | ISBN 0-596-52010-7 [5th edition June 2008] |
310 | http://oreilly.com/catalog/9780596520106/ |
68dc0745 |
311 | |
ac9dac7f |
312 | Intermediate Perl (the "Alpaca Book") |
313 | by Randal L. Schwartz and brian d foy, with Tom Phoenix (foreword by Damian Conway) |
314 | ISBN 0-596-10206-2 [1st edition March 2006] |
c195e131 |
315 | http://www.oreilly.com/catalog/intermediateperl/ |
316 | |
317 | Mastering Perl |
318 | by brian d foy |
319 | ISBN 0-596-52724-1 [1st edition July 2007] |
320 | http://www.oreilly.com/catalog/9780596527242/ |
16073f15 |
321 | |
c355f4f4 |
322 | =item Task-Oriented |
5a964f20 |
323 | |
7678cced |
324 | Writing Perl Modules for CPAN |
325 | by Sam Tregar |
3bc3c5be |
326 | ISBN 1-59059-018-X [1st edition August 2002] |
7678cced |
327 | http://apress.com/book/bookDisplay.html?bID=14 |
328 | |
c98c5709 |
329 | The Perl Cookbook |
5a964f20 |
330 | by Tom Christiansen and Nathan Torkington |
331 | with foreword by Larry Wall |
c2e66d9e |
332 | ISBN 1-56592-243-3 [1st edition August 1998] |
333 | http://www.oreilly.com/catalog/cookbook/ |
5a964f20 |
334 | |
c98c5709 |
335 | Effective Perl Programming |
5a964f20 |
336 | by Joseph Hall |
c2e66d9e |
337 | ISBN 0-201-41975-0 [1st edition 1998] |
338 | http://www.awl.com/ |
68dc0745 |
339 | |
7678cced |
340 | Real World SQL Server Administration with Perl |
341 | by Linchi Shea |
342 | ISBN 1-59059-097-X [1st edition July 2003] |
343 | http://apress.com/book/bookDisplay.html?bID=171 |
344 | |
5a964f20 |
345 | =item Special Topics |
346 | |
58103a2e |
347 | Perl Best Practices |
348 | by Damian Conway |
349 | ISBN: 0-596-00173-8 [1st edition July 2005] |
350 | http://www.oreilly.com/catalog/perlbp/ |
351 | |
352 | Higher Order Perl |
353 | by Mark-Jason Dominus |
354 | ISBN: 1558607013 [1st edition March 2005] |
355 | http://hop.perl.plover.com/ |
356 | |
7678cced |
357 | Perl 6 Now: The Core Ideas Illustrated with Perl 5 |
358 | by Scott Walters |
58103a2e |
359 | ISBN 1-59059-395-2 [1st edition December 2004] |
7678cced |
360 | http://apress.com/book/bookDisplay.html?bID=355 |
6670e5e7 |
361 | |
c98c5709 |
362 | Mastering Regular Expressions |
c2e66d9e |
363 | by Jeffrey E. F. Friedl |
02d51d12 |
364 | ISBN 0-596-00289-0 [2nd edition July 2002] |
365 | http://www.oreilly.com/catalog/regex2/ |
5a964f20 |
366 | |
7678cced |
367 | Network Programming with Perl |
5a964f20 |
368 | by Lincoln Stein |
c355f4f4 |
369 | ISBN 0-201-61571-1 [1st edition 2001] |
370 | http://www.awlonline.com/ |
5a964f20 |
371 | |
7678cced |
372 | Object Oriented Perl |
3bc3c5be |
373 | by Damian Conway |
c2e66d9e |
374 | with foreword by Randal L. Schwartz |
ed8cf1fe |
375 | ISBN 1-884777-79-1 [1st edition August 1999] |
ac9dac7f |
376 | http://www.manning.com/conway/ |
c2e66d9e |
377 | |
7678cced |
378 | Data Munging with Perl |
3bc3c5be |
379 | by Dave Cross |
ed8cf1fe |
380 | ISBN 1-930110-00-6 [1st edition 2001] |
381 | http://www.manning.com/cross |
c355f4f4 |
382 | |
7678cced |
383 | Mastering Perl/Tk |
ed8cf1fe |
384 | by Steve Lidie and Nancy Walsh |
385 | ISBN 1-56592-716-8 [1st edition January 2002] |
386 | http://www.oreilly.com/catalog/mastperltk/ |
87275199 |
387 | |
c98c5709 |
388 | Extending and Embedding Perl |
389 | by Tim Jenness and Simon Cozens |
390 | ISBN 1-930110-82-0 [1st edition August 2002] |
391 | http://www.manning.com/jenness |
c74d0ee8 |
392 | |
c98c5709 |
393 | Perl Debugger Pocket Reference |
394 | by Richard Foley |
395 | ISBN 0-596-00503-2 [1st edition January 2004] |
6670e5e7 |
396 | http://www.oreilly.com/catalog/perldebugpr/ |
024e7d0c |
397 | |
c195e131 |
398 | Pro Perl Debugging |
399 | by Richard Foley with Andy Lester |
400 | ISBN 1-59059-454-1 [1st edition July 2005] |
401 | http://www.apress.com/book/view/1590594541 |
487af187 |
402 | |
5a964f20 |
403 | =back |
404 | |
fcd1fd07 |
405 | =head2 Which magazines have Perl content? |
5a964f20 |
406 | |
ac9dac7f |
407 | I<The Perl Review> ( http://www.theperlreview.com ) focuses on Perl |
408 | almost completely (although it sometimes sneaks in an article about |
ac003c96 |
409 | another language). There's also I<$foo Magazin>, a german magazine |
410 | dedicated to Perl, at ( http://www.foo-magazin.de ). |
ac9dac7f |
411 | |
3bc3c5be |
412 | The I<Perl-Zeitung> is a German-speaking magazine for Perl beginners |
413 | (see http://perl-zeitung.at.tf ). |
414 | |
ac9dac7f |
415 | Magazines that frequently carry quality articles on Perl include I<The |
416 | Perl Review> ( http://www.theperlreview.com ), I<Unix Review> ( |
417 | http://www.unixreview.com/ ), I<Linux Magazine> ( |
418 | http://www.linuxmagazine.com/ ), and Usenix's newsletter/magazine to |
3bc3c5be |
419 | its members, I<login:> ( http://www.usenix.org/ ). |
41eb6b36 |
420 | |
ae6d88cb |
421 | The Perl columns of Randal L. Schwartz are available on the web at |
41eb6b36 |
422 | http://www.stonehenge.com/merlyn/WebTechniques/ , |
423 | http://www.stonehenge.com/merlyn/UnixReview/ , and |
424 | http://www.stonehenge.com/merlyn/LinuxMag/ . |
68dc0745 |
425 | |
ac9dac7f |
426 | The first (and for a long time, only) periodical devoted to All Things |
427 | Perl, I<The Perl Journal> contains tutorials, demonstrations, case |
428 | studies, announcements, contests, and much more. I<TPJ> has columns |
429 | on web development, databases, Win32 Perl, graphical programming, |
430 | regular expressions, and networking, and sponsors the Obfuscated Perl |
3bc3c5be |
431 | Contest and the Perl Poetry Contests. Beginning in November 2002, I<TPJ> |
ac9dac7f |
432 | moved to a reader-supported monthly e-zine format in which subscribers |
3bc3c5be |
433 | can download issues as PDF documents. In 2006, I<TPJ> merged with Dr. |
434 | Dobbs Journal (online edition). To read old I<TPJ> articles, see |
ac9dac7f |
435 | http://www.ddj.com/ . |
436 | |
87275199 |
437 | =head2 What mailing lists are there for Perl? |
68dc0745 |
438 | |
3bc3c5be |
439 | Most of the major modules (C<Tk>, C<CGI>, C<libwww-perl>) have their own |
68dc0745 |
440 | mailing lists. Consult the documentation that came with the module for |
c355f4f4 |
441 | subscription information. |
68dc0745 |
442 | |
ccbb3b41 |
443 | A comprehensive list of Perl related mailing lists can be found at: |
444 | |
49d635f9 |
445 | http://lists.perl.org/ |
83a70550 |
446 | |
fcd1fd07 |
447 | =head2 Where are the archives for comp.lang.perl.misc? |
68dc0745 |
448 | |
b0bd3af0 |
449 | The Google search engine now carries archived and searchable newsgroup |
197aec24 |
450 | content. |
68dc0745 |
451 | |
109f0441 |
452 | http://groups.google.com/group/comp.lang.perl.misc/topics |
68dc0745 |
453 | |
b0bd3af0 |
454 | If you have a question, you can be sure someone has already asked the |
455 | same question at some point on c.l.p.m. It requires some time and patience |
456 | to sift through all the content but often you will find the answer you |
457 | seek. |
68dc0745 |
458 | |
b68463f7 |
459 | =head2 Where can I buy a commercial version of perl? |
68dc0745 |
460 | |
b68463f7 |
461 | In a real sense, perl already I<is> commercial software: it has a license |
65acb1b1 |
462 | that you can grab and carefully read to your manager. It is distributed |
463 | in releases and comes in well-defined packages. There is a very large |
464 | user community and an extensive literature. The comp.lang.perl.* |
465 | newsgroups and several of the mailing lists provide free answers to your |
466 | questions in near real-time. Perl has traditionally been supported by |
8305e449 |
467 | Larry, scores of software designers and developers, and myriad |
65acb1b1 |
468 | programmers, all working for free to create a useful thing to make life |
469 | better for everyone. |
68dc0745 |
470 | |
471 | However, these answers may not suffice for managers who require a |
65acb1b1 |
472 | purchase order from a company whom they can sue should anything go awry. |
473 | Or maybe they need very serious hand-holding and contractual obligations. |
b68463f7 |
474 | Shrink-wrapped CDs with perl on them are available from several sources if |
475 | that will help. For example, many Perl books include a distribution of perl, |
a6dd486b |
476 | as do the O'Reilly Perl Resource Kits (in both the Unix flavor |
65acb1b1 |
477 | and in the proprietary Microsoft flavor); the free Unix distributions |
b68463f7 |
478 | also all come with perl. |
68dc0745 |
479 | |
68dc0745 |
480 | =head2 Where do I send bug reports? |
481 | |
109f0441 |
482 | (contributed by brian d foy) |
483 | |
484 | First, ensure that you've found an actual bug. Second, ensure you've |
485 | found an actual bug. |
486 | |
487 | If you've found a bug with the perl interpreter or one of the modules |
488 | in the standard library (those that come with Perl), you can use the |
489 | C<perlbug> utility that comes with Perl (>= 5.004). It collects |
490 | information about your installation to include with your message, then |
491 | sends the message to the right place. |
b68463f7 |
492 | |
109f0441 |
493 | To determine if a module came with your version of Perl, you can |
494 | use the C<Module::CoreList> module. It has the information about |
495 | the modules (with their versions) included with each release of Perl. |
68dc0745 |
496 | |
3bc3c5be |
497 | If C<Module::CoreList> is not installed on your system, check out |
498 | http://perlpunks.de/corelist . |
499 | |
109f0441 |
500 | Every CPAN module has a bug tracker set up in RT, http://rt.cpan.org . |
501 | You can submit bugs to RT either through its web interface or by |
502 | email. To email a bug report, send it to |
503 | bug-E<lt>distribution-nameE<gt>@rt.cpan.org . For example, if you |
504 | wanted to report a bug in C<Business::ISBN>, you could send a message to |
505 | bug-Business-ISBN@rt.cpan.org . |
68dc0745 |
506 | |
109f0441 |
507 | Some modules might have special reporting requirements, such as a |
508 | Sourceforge or Google Code tracking system, so you should check the |
509 | module documentation too. |
68dc0745 |
510 | |
06a5f41f |
511 | =head2 What is perl.com? Perl Mongers? pm.org? perl.org? cpan.org? |
68dc0745 |
512 | |
c98c5709 |
513 | Perl.com at http://www.perl.com/ is part of the O'Reilly Network, a |
514 | subsidiary of O'Reilly Media. |
68dc0745 |
515 | |
c98c5709 |
516 | The Perl Foundation is an advocacy organization for the Perl language |
517 | which maintains the web site http://www.perl.org/ as a general |
518 | advocacy site for the Perl language. It uses the domain to provide |
519 | general support services to the Perl community, including the hosting |
c195e131 |
520 | of mailing lists, web sites, and other services. There are also many |
521 | other sub-domains for special topics like learning Perl, Perl news, jobs |
522 | in Perl, such as: |
c98c5709 |
523 | |
524 | http://learn.perl.org/ |
525 | http://use.perl.org/ |
526 | http://jobs.perl.org/ |
527 | http://lists.perl.org/ |
90bb42f6 |
528 | |
529 | Perl Mongers uses the pm.org domain for services related to Perl user |
74078192 |
530 | groups, including the hosting of mailing lists and web sites. See the |
531 | Perl user group web site at http://www.pm.org/ for more information about |
532 | joining, starting, or requesting services for a Perl user group. |
90bb42f6 |
533 | |
06a5f41f |
534 | http://www.cpan.org/ is the Comprehensive Perl Archive Network, |
d7f8936a |
535 | a replicated worldwide repository of Perl software, see |
06a5f41f |
536 | the I<What is CPAN?> question earlier in this document. |
537 | |
68dc0745 |
538 | =head1 AUTHOR AND COPYRIGHT |
539 | |
8d2e243f |
540 | Copyright (c) 1997-2010 Tom Christiansen, Nathan Torkington, and |
7678cced |
541 | other authors as noted. All rights reserved. |
5a964f20 |
542 | |
5a7beb56 |
543 | This documentation is free; you can redistribute it and/or modify it |
544 | under the same terms as Perl itself. |
c8db1d39 |
545 | |
87275199 |
546 | Irrespective of its distribution, all code examples here are in the public |
c8db1d39 |
547 | domain. You are permitted and encouraged to use this code and any |
548 | derivatives thereof in your own programs for fun or for profit as you |
549 | see fit. A simple comment in the code giving credit to the FAQ would |
550 | be courteous but is not required. |