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