1=head1 NAME
2
3perlfaq - Frequently asked questions about Perl
4
5=head1 VERSION
6
7version 5.20200523
8
9=head1 DESCRIPTION
10
11The perlfaq comprises several documents that answer the most commonly
12asked questions about Perl and Perl programming. It's divided by topic
13into nine major sections outlined in this document.
14
15=head2 Where to find the perlfaq
16
17The perlfaq is an evolving document.  Read the latest version at
18L<http://learn.perl.org/faq/>.  It is also included in the standard Perl
19distribution.
20
21=head2 How to use the perlfaq
22
23The C<perldoc> command line tool is part of the standard Perl distribution. To
24read the perlfaq:
25
26    $ perldoc perlfaq
27
28To search the perlfaq question headings:
29
30    $ perldoc -q open
31
32=head2 How to contribute to the perlfaq
33
34Review L<https://github.com/perl-doc-cats/perlfaq/wiki>.  If you don't find
35your suggestion create an issue or pull request against
36L<https://github.com/perl-doc-cats/perlfaq>.
37
38Once approved, changes are merged into L<https://github.com/tpf/perlfaq>, the
39repository which drives L<http://learn.perl.org/faq/>, and they are
40distributed with the next Perl 5 release.
41
42=head2 What if my question isn't answered in the FAQ?
43
44Try the resources in L<perlfaq2>.
45
46=head1 TABLE OF CONTENTS
47
48=over 4
49
50=item perlfaq1 - General Questions About Perl
51
52=item perlfaq2 - Obtaining and Learning about Perl
53
54=item perlfaq3 - Programming Tools
55
56=item perlfaq4 - Data Manipulation
57
58=item perlfaq5 - Files and Formats
59
60=item perlfaq6 - Regular Expressions
61
62=item perlfaq7 - General Perl Language Issues
63
64=item perlfaq8 - System Interaction
65
66=item perlfaq9 - Web, Email and Networking
67
68=back
69
70=head1 THE QUESTIONS
71
72=head2 L<perlfaq1>: General Questions About Perl
73
74This section of the FAQ answers very general, high-level questions about Perl.
75
76=over 4
77
78=item *
79
80What is Perl?
81
82=item *
83
84Who supports Perl? Who develops it? Why is it free?
85
86=item *
87
88Which version of Perl should I use?
89
90=item *
91
92What are Perl 4, Perl 5, or Raku (Perl 6)?
93
94=item *
95
96What is Raku (Perl 6)?
97
98=item *
99
100How stable is Perl?
101
102=item *
103
104How often are new versions of Perl released?
105
106=item *
107
108Is Perl difficult to learn?
109
110=item *
111
112How does Perl compare with other languages like Java, Python, REXX, Scheme, or Tcl?
113
114=item *
115
116Can I do [task] in Perl?
117
118=item *
119
120When shouldn't I program in Perl?
121
122=item *
123
124What's the difference between "perl" and "Perl"?
125
126=item *
127
128What is a JAPH?
129
130=item *
131
132How can I convince others to use Perl?
133
134=back
135
136
137=head2 L<perlfaq2>: Obtaining and Learning about Perl
138
139This section of the FAQ answers questions about where to find source and documentation for Perl, support, and related matters.
140
141=over 4
142
143=item *
144
145What machines support Perl? Where do I get it?
146
147=item *
148
149How can I get a binary version of Perl?
150
151=item *
152
153I don't have a C compiler. How can I build my own Perl interpreter?
154
155=item *
156
157I copied the Perl binary from one machine to another, but scripts don't work.
158
159=item *
160
161I grabbed the sources and tried to compile but gdbm/dynamic loading/malloc/linking/... failed. How do I make it work?
162
163=item *
164
165What modules and extensions are available for Perl? What is CPAN?
166
167=item *
168
169Where can I get information on Perl?
170
171=item *
172
173What is perl.com? Perl Mongers? pm.org? perl.org? cpan.org?
174
175=item *
176
177Where can I post questions?
178
179=item *
180
181Perl Books
182
183=item *
184
185Which magazines have Perl content?
186
187=item *
188
189Which Perl blogs should I read?
190
191=item *
192
193What mailing lists are there for Perl?
194
195=item *
196
197Where can I buy a commercial version of Perl?
198
199=item *
200
201Where do I send bug reports?
202
203=back
204
205
206=head2 L<perlfaq3>: Programming Tools
207
208This section of the FAQ answers questions related to programmer tools and programming support.
209
210=over 4
211
212=item *
213
214How do I do (anything)?
215
216=item *
217
218How can I use Perl interactively?
219
220=item *
221
222How do I find which modules are installed on my system?
223
224=item *
225
226How do I debug my Perl programs?
227
228=item *
229
230How do I profile my Perl programs?
231
232=item *
233
234How do I cross-reference my Perl programs?
235
236=item *
237
238Is there a pretty-printer (formatter) for Perl?
239
240=item *
241
242Is there an IDE or Windows Perl Editor?
243
244=item *
245
246Where can I get Perl macros for vi?
247
248=item *
249
250Where can I get perl-mode or cperl-mode for emacs?
251
252=item *
253
254How can I use curses with Perl?
255
256=item *
257
258How can I write a GUI (X, Tk, Gtk, etc.) in Perl?
259
260=item *
261
262How can I make my Perl program run faster?
263
264=item *
265
266How can I make my Perl program take less memory?
267
268=item *
269
270Is it safe to return a reference to local or lexical data?
271
272=item *
273
274How can I free an array or hash so my program shrinks?
275
276=item *
277
278How can I make my CGI script more efficient?
279
280=item *
281
282How can I hide the source for my Perl program?
283
284=item *
285
286How can I compile my Perl program into byte code or C?
287
288=item *
289
290How can I get C<#!perl> to work on [MS-DOS,NT,...]?
291
292=item *
293
294Can I write useful Perl programs on the command line?
295
296=item *
297
298Why don't Perl one-liners work on my DOS/Mac/VMS system?
299
300=item *
301
302Where can I learn about CGI or Web programming in Perl?
303
304=item *
305
306Where can I learn about object-oriented Perl programming?
307
308=item *
309
310Where can I learn about linking C with Perl?
311
312=item *
313
314I've read perlembed, perlguts, etc., but I can't embed perl in my C program; what am I doing wrong?
315
316=item *
317
318When I tried to run my script, I got this message. What does it mean?
319
320=item *
321
322What's MakeMaker?
323
324=back
325
326
327=head2 L<perlfaq4>: Data Manipulation
328
329This section of the FAQ answers questions related to manipulating numbers, dates, strings, arrays, hashes, and miscellaneous data issues.
330
331=over 4
332
333=item *
334
335Why am I getting long decimals (eg, 19.9499999999999) instead of the numbers I should be getting (eg, 19.95)?
336
337=item *
338
339Why is int() broken?
340
341=item *
342
343Why isn't my octal data interpreted correctly?
344
345=item *
346
347Does Perl have a round() function? What about ceil() and floor()? Trig functions?
348
349=item *
350
351How do I convert between numeric representations/bases/radixes?
352
353=item *
354
355Why doesn't & work the way I want it to?
356
357=item *
358
359How do I multiply matrices?
360
361=item *
362
363How do I perform an operation on a series of integers?
364
365=item *
366
367How can I output Roman numerals?
368
369=item *
370
371Why aren't my random numbers random?
372
373=item *
374
375How do I get a random number between X and Y?
376
377=item *
378
379How do I find the day or week of the year?
380
381=item *
382
383How do I find the current century or millennium?
384
385=item *
386
387How can I compare two dates and find the difference?
388
389=item *
390
391How can I take a string and turn it into epoch seconds?
392
393=item *
394
395How can I find the Julian Day?
396
397=item *
398
399How do I find yesterday's date?
400
401=item *
402
403Does Perl have a Year 2000 or 2038 problem? Is Perl Y2K compliant?
404
405=item *
406
407How do I validate input?
408
409=item *
410
411How do I unescape a string?
412
413=item *
414
415How do I remove consecutive pairs of characters?
416
417=item *
418
419How do I expand function calls in a string?
420
421=item *
422
423How do I find matching/nesting anything?
424
425=item *
426
427How do I reverse a string?
428
429=item *
430
431How do I expand tabs in a string?
432
433=item *
434
435How do I reformat a paragraph?
436
437=item *
438
439How can I access or change N characters of a string?
440
441=item *
442
443How do I change the Nth occurrence of something?
444
445=item *
446
447How can I count the number of occurrences of a substring within a string?
448
449=item *
450
451How do I capitalize all the words on one line?
452
453=item *
454
455How can I split a [character]-delimited string except when inside [character]?
456
457=item *
458
459How do I strip blank space from the beginning/end of a string?
460
461=item *
462
463How do I pad a string with blanks or pad a number with zeroes?
464
465=item *
466
467How do I extract selected columns from a string?
468
469=item *
470
471How do I find the soundex value of a string?
472
473=item *
474
475How can I expand variables in text strings?
476
477=item *
478
479What's wrong with always quoting "$vars"?
480
481=item *
482
483Why don't my E<lt>E<lt>HERE documents work?
484
485=item *
486
487What is the difference between a list and an array?
488
489=item *
490
491What is the difference between $array[1] and @array[1]?
492
493=item *
494
495How can I remove duplicate elements from a list or array?
496
497=item *
498
499How can I tell whether a certain element is contained in a list or array?
500
501=item *
502
503How do I compute the difference of two arrays? How do I compute the intersection of two arrays?
504
505=item *
506
507How do I test whether two arrays or hashes are equal?
508
509=item *
510
511How do I find the first array element for which a condition is true?
512
513=item *
514
515How do I handle linked lists?
516
517=item *
518
519How do I handle circular lists?
520
521=item *
522
523How do I shuffle an array randomly?
524
525=item *
526
527How do I process/modify each element of an array?
528
529=item *
530
531How do I select a random element from an array?
532
533=item *
534
535How do I permute N elements of a list?
536
537=item *
538
539How do I sort an array by (anything)?
540
541=item *
542
543How do I manipulate arrays of bits?
544
545=item *
546
547Why does defined() return true on empty arrays and hashes?
548
549=item *
550
551How do I process an entire hash?
552
553=item *
554
555How do I merge two hashes?
556
557=item *
558
559What happens if I add or remove keys from a hash while iterating over it?
560
561=item *
562
563How do I look up a hash element by value?
564
565=item *
566
567How can I know how many entries are in a hash?
568
569=item *
570
571How do I sort a hash (optionally by value instead of key)?
572
573=item *
574
575How can I always keep my hash sorted?
576
577=item *
578
579What's the difference between "delete" and "undef" with hashes?
580
581=item *
582
583Why don't my tied hashes make the defined/exists distinction?
584
585=item *
586
587How do I reset an each() operation part-way through?
588
589=item *
590
591How can I get the unique keys from two hashes?
592
593=item *
594
595How can I store a multidimensional array in a DBM file?
596
597=item *
598
599How can I make my hash remember the order I put elements into it?
600
601=item *
602
603Why does passing a subroutine an undefined element in a hash create it?
604
605=item *
606
607How can I make the Perl equivalent of a C structure/C++ class/hash or array of hashes or arrays?
608
609=item *
610
611How can I use a reference as a hash key?
612
613=item *
614
615How can I check if a key exists in a multilevel hash?
616
617=item *
618
619How can I prevent addition of unwanted keys into a hash?
620
621=item *
622
623How do I handle binary data correctly?
624
625=item *
626
627How do I determine whether a scalar is a number/whole/integer/float?
628
629=item *
630
631How do I keep persistent data across program calls?
632
633=item *
634
635How do I print out or copy a recursive data structure?
636
637=item *
638
639How do I define methods for every class/object?
640
641=item *
642
643How do I verify a credit card checksum?
644
645=item *
646
647How do I pack arrays of doubles or floats for XS code?
648
649=back
650
651
652=head2 L<perlfaq5>: Files and Formats
653
654This section deals with I/O and the "f" issues: filehandles, flushing, formats, and footers.
655
656=over 4
657
658=item *
659
660How do I flush/unbuffer an output filehandle? Why must I do this?
661
662=item *
663
664How do I change, delete, or insert a line in a file, or append to the beginning of a file?
665
666=item *
667
668How do I count the number of lines in a file?
669
670=item *
671
672How do I delete the last N lines from a file?
673
674=item *
675
676How can I use Perl's C<-i> option from within a program?
677
678=item *
679
680How can I copy a file?
681
682=item *
683
684How do I make a temporary file name?
685
686=item *
687
688How can I manipulate fixed-record-length files?
689
690=item *
691
692How can I make a filehandle local to a subroutine? How do I pass filehandles between subroutines? How do I make an array of filehandles?
693
694=item *
695
696How can I use a filehandle indirectly?
697
698=item *
699
700How can I open a filehandle to a string?
701
702=item *
703
704How can I set up a footer format to be used with write()?
705
706=item *
707
708How can I write() into a string?
709
710=item *
711
712How can I output my numbers with commas added?
713
714=item *
715
716How can I translate tildes (~) in a filename?
717
718=item *
719
720How come when I open a file read-write it wipes it out?
721
722=item *
723
724Why do I sometimes get an "Argument list too long" when I use E<lt>*E<gt>?
725
726=item *
727
728How can I open a file named with a leading "E<gt>" or trailing blanks?
729
730=item *
731
732How can I reliably rename a file?
733
734=item *
735
736How can I lock a file?
737
738=item *
739
740Why can't I just open(FH, "E<gt>file.lock")?
741
742=item *
743
744I still don't get locking. I just want to increment the number in the file. How can I do this?
745
746=item *
747
748All I want to do is append a small amount of text to the end of a file. Do I still have to use locking?
749
750=item *
751
752How do I randomly update a binary file?
753
754=item *
755
756How do I get a file's timestamp in perl?
757
758=item *
759
760How do I set a file's timestamp in perl?
761
762=item *
763
764How do I print to more than one file at once?
765
766=item *
767
768How can I read in an entire file all at once?
769
770=item *
771
772How can I read in a file by paragraphs?
773
774=item *
775
776How can I read a single character from a file? From the keyboard?
777
778=item *
779
780How can I tell whether there's a character waiting on a filehandle?
781
782=item *
783
784How do I do a C<tail -f> in perl?
785
786=item *
787
788How do I dup() a filehandle in Perl?
789
790=item *
791
792How do I close a file descriptor by number?
793
794=item *
795
796Why can't I use "C:\temp\foo" in DOS paths? Why doesn't `C:\temp\foo.exe` work?
797
798=item *
799
800Why doesn't glob("*.*") get all the files?
801
802=item *
803
804Why does Perl let me delete read-only files? Why does C<-i> clobber protected files? Isn't this a bug in Perl?
805
806=item *
807
808How do I select a random line from a file?
809
810=item *
811
812Why do I get weird spaces when I print an array of lines?
813
814=item *
815
816How do I traverse a directory tree?
817
818=item *
819
820How do I delete a directory tree?
821
822=item *
823
824How do I copy an entire directory?
825
826=back
827
828
829=head2 L<perlfaq6>: Regular Expressions
830
831This section is surprisingly small because the rest of the FAQ is littered with answers involving regular expressions. For example, decoding a URL and checking whether something is a number can be handled with regular expressions, but those answers are found elsewhere in this document (in perlfaq9 : "How do I decode or create those %-encodings on the web" and perlfaq4 : "How do I determine whether a scalar is a number/whole/integer/float", to be precise).
832
833=over 4
834
835=item *
836
837How can I hope to use regular expressions without creating illegible and unmaintainable code?
838
839=item *
840
841I'm having trouble matching over more than one line. What's wrong?
842
843=item *
844
845How can I pull out lines between two patterns that are themselves on different lines?
846
847=item *
848
849How do I match XML, HTML, or other nasty, ugly things with a regex?
850
851=item *
852
853I put a regular expression into $/ but it didn't work. What's wrong?
854
855=item *
856
857How do I substitute case-insensitively on the LHS while preserving case on the RHS?
858
859=item *
860
861How can I make C<\w> match national character sets?
862
863=item *
864
865How can I match a locale-smart version of C</[a-zA-Z]/> ?
866
867=item *
868
869How can I quote a variable to use in a regex?
870
871=item *
872
873What is C</o> really for?
874
875=item *
876
877How do I use a regular expression to strip C-style comments from a file?
878
879=item *
880
881Can I use Perl regular expressions to match balanced text?
882
883=item *
884
885What does it mean that regexes are greedy? How can I get around it?
886
887=item *
888
889How do I process each word on each line?
890
891=item *
892
893How can I print out a word-frequency or line-frequency summary?
894
895=item *
896
897How can I do approximate matching?
898
899=item *
900
901How do I efficiently match many regular expressions at once?
902
903=item *
904
905Why don't word-boundary searches with C<\b> work for me?
906
907=item *
908
909Why does using $&, $`, or $' slow my program down?
910
911=item *
912
913What good is C<\G> in a regular expression?
914
915=item *
916
917Are Perl regexes DFAs or NFAs? Are they POSIX compliant?
918
919=item *
920
921What's wrong with using grep in a void context?
922
923=item *
924
925How can I match strings with multibyte characters?
926
927=item *
928
929How do I match a regular expression that's in a variable?
930
931=back
932
933
934=head2 L<perlfaq7>: General Perl Language Issues
935
936This section deals with general Perl language issues that don't clearly fit into any of the other sections.
937
938=over 4
939
940=item *
941
942Can I get a BNF/yacc/RE for the Perl language?
943
944=item *
945
946What are all these $@%&* punctuation signs, and how do I know when to use them?
947
948=item *
949
950Do I always/never have to quote my strings or use semicolons and commas?
951
952=item *
953
954How do I skip some return values?
955
956=item *
957
958How do I temporarily block warnings?
959
960=item *
961
962What's an extension?
963
964=item *
965
966Why do Perl operators have different precedence than C operators?
967
968=item *
969
970How do I declare/create a structure?
971
972=item *
973
974How do I create a module?
975
976=item *
977
978How do I adopt or take over a module already on CPAN?
979
980=item *
981
982How do I create a class?
983
984=item *
985
986How can I tell if a variable is tainted?
987
988=item *
989
990What's a closure?
991
992=item *
993
994What is variable suicide and how can I prevent it?
995
996=item *
997
998How can I pass/return a {Function, FileHandle, Array, Hash, Method, Regex}?
999
1000=item *
1001
1002How do I create a static variable?
1003
1004=item *
1005
1006What's the difference between dynamic and lexical (static) scoping? Between local() and my()?
1007
1008=item *
1009
1010How can I access a dynamic variable while a similarly named lexical is in scope?
1011
1012=item *
1013
1014What's the difference between deep and shallow binding?
1015
1016=item *
1017
1018Why doesn't "my($foo) = E<lt>$fhE<gt>;" work right?
1019
1020=item *
1021
1022How do I redefine a builtin function, operator, or method?
1023
1024=item *
1025
1026What's the difference between calling a function as &foo and foo()?
1027
1028=item *
1029
1030How do I create a switch or case statement?
1031
1032=item *
1033
1034How can I catch accesses to undefined variables, functions, or methods?
1035
1036=item *
1037
1038Why can't a method included in this same file be found?
1039
1040=item *
1041
1042How can I find out my current or calling package?
1043
1044=item *
1045
1046How can I comment out a large block of Perl code?
1047
1048=item *
1049
1050How do I clear a package?
1051
1052=item *
1053
1054How can I use a variable as a variable name?
1055
1056=item *
1057
1058What does "bad interpreter" mean?
1059
1060=item *
1061
1062Do I need to recompile XS modules when there is a change in the C library?
1063
1064=back
1065
1066
1067=head2 L<perlfaq8>: System Interaction
1068
1069This section of the Perl FAQ covers questions involving operating system interaction. Topics include interprocess communication (IPC), control over the user-interface (keyboard, screen and pointing devices), and most anything else not related to data manipulation.
1070
1071=over 4
1072
1073=item *
1074
1075How do I find out which operating system I'm running under?
1076
1077=item *
1078
1079How come exec() doesn't return?
1080
1081=item *
1082
1083How do I do fancy stuff with the keyboard/screen/mouse?
1084
1085=item *
1086
1087How do I print something out in color?
1088
1089=item *
1090
1091How do I read just one key without waiting for a return key?
1092
1093=item *
1094
1095How do I check whether input is ready on the keyboard?
1096
1097=item *
1098
1099How do I clear the screen?
1100
1101=item *
1102
1103How do I get the screen size?
1104
1105=item *
1106
1107How do I ask the user for a password?
1108
1109=item *
1110
1111How do I read and write the serial port?
1112
1113=item *
1114
1115How do I decode encrypted password files?
1116
1117=item *
1118
1119How do I start a process in the background?
1120
1121=item *
1122
1123How do I trap control characters/signals?
1124
1125=item *
1126
1127How do I modify the shadow password file on a Unix system?
1128
1129=item *
1130
1131How do I set the time and date?
1132
1133=item *
1134
1135How can I sleep() or alarm() for under a second?
1136
1137=item *
1138
1139How can I measure time under a second?
1140
1141=item *
1142
1143How can I do an atexit() or setjmp()/longjmp()? (Exception handling)
1144
1145=item *
1146
1147Why doesn't my sockets program work under System V (Solaris)? What does the error message "Protocol not supported" mean?
1148
1149=item *
1150
1151How can I call my system's unique C functions from Perl?
1152
1153=item *
1154
1155Where do I get the include files to do ioctl() or syscall()?
1156
1157=item *
1158
1159Why do setuid perl scripts complain about kernel problems?
1160
1161=item *
1162
1163How can I open a pipe both to and from a command?
1164
1165=item *
1166
1167Why can't I get the output of a command with system()?
1168
1169=item *
1170
1171How can I capture STDERR from an external command?
1172
1173=item *
1174
1175Why doesn't open() return an error when a pipe open fails?
1176
1177=item *
1178
1179What's wrong with using backticks in a void context?
1180
1181=item *
1182
1183How can I call backticks without shell processing?
1184
1185=item *
1186
1187Why can't my script read from STDIN after I gave it EOF (^D on Unix, ^Z on MS-DOS)?
1188
1189=item *
1190
1191How can I convert my shell script to perl?
1192
1193=item *
1194
1195Can I use perl to run a telnet or ftp session?
1196
1197=item *
1198
1199How can I write expect in Perl?
1200
1201=item *
1202
1203Is there a way to hide perl's command line from programs such as "ps"?
1204
1205=item *
1206
1207I {changed directory, modified my environment} in a perl script. How come the change disappeared when I exited the script? How do I get my changes to be visible?
1208
1209=item *
1210
1211How do I close a process's filehandle without waiting for it to complete?
1212
1213=item *
1214
1215How do I fork a daemon process?
1216
1217=item *
1218
1219How do I find out if I'm running interactively or not?
1220
1221=item *
1222
1223How do I timeout a slow event?
1224
1225=item *
1226
1227How do I set CPU limits?
1228
1229=item *
1230
1231How do I avoid zombies on a Unix system?
1232
1233=item *
1234
1235How do I use an SQL database?
1236
1237=item *
1238
1239How do I make a system() exit on control-C?
1240
1241=item *
1242
1243How do I open a file without blocking?
1244
1245=item *
1246
1247How do I tell the difference between errors from the shell and perl?
1248
1249=item *
1250
1251How do I install a module from CPAN?
1252
1253=item *
1254
1255What's the difference between require and use?
1256
1257=item *
1258
1259How do I keep my own module/library directory?
1260
1261=item *
1262
1263How do I add the directory my program lives in to the module/library search path?
1264
1265=item *
1266
1267How do I add a directory to my include path (@INC) at runtime?
1268
1269=item *
1270
1271Where are modules installed?
1272
1273=item *
1274
1275What is socket.ph and where do I get it?
1276
1277=back
1278
1279
1280=head2 L<perlfaq9>: Web, Email and Networking
1281
1282This section deals with questions related to running web sites, sending and receiving email as well as general networking.
1283
1284=over 4
1285
1286=item *
1287
1288Should I use a web framework?
1289
1290=item *
1291
1292Which web framework should I use?
1293
1294=item *
1295
1296What is Plack and PSGI?
1297
1298=item *
1299
1300How do I remove HTML from a string?
1301
1302=item *
1303
1304How do I extract URLs?
1305
1306=item *
1307
1308How do I fetch an HTML file?
1309
1310=item *
1311
1312How do I automate an HTML form submission?
1313
1314=item *
1315
1316How do I decode or create those %-encodings on the web?
1317
1318=item *
1319
1320How do I redirect to another page?
1321
1322=item *
1323
1324How do I put a password on my web pages?
1325
1326=item *
1327
1328How do I make sure users can't enter values into a form that causes my CGI script to do bad things?
1329
1330=item *
1331
1332How do I parse a mail header?
1333
1334=item *
1335
1336How do I check a valid mail address?
1337
1338=item *
1339
1340How do I decode a MIME/BASE64 string?
1341
1342=item *
1343
1344How do I find the user's mail address?
1345
1346=item *
1347
1348How do I send email?
1349
1350=item *
1351
1352How do I use MIME to make an attachment to a mail message?
1353
1354=item *
1355
1356How do I read email?
1357
1358=item *
1359
1360How do I find out my hostname, domainname, or IP address?
1361
1362=item *
1363
1364How do I fetch/put an (S)FTP file?
1365
1366=item *
1367
1368How can I do RPC in Perl?
1369
1370=back
1371
1372
1373
1374=head1 CREDITS
1375
1376Tom Christiansen wrote the original perlfaq then expanded it with the
1377help of Nat Torkington. brian d foy substantially edited and expanded
1378the perlfaq. perlfaq-workers and others have also supplied feedback,
1379patches and corrections over the years.
1380
1381=head1 AUTHOR AND COPYRIGHT
1382
1383Tom Christiansen wrote the original version of this document.
1384brian d foy C<< <bdfoy@cpan.org> >> wrote this version. See the
1385individual perlfaq documents for additional copyright information.
1386
1387This document is available under the same terms as Perl itself. Code
1388examples in all the perlfaq documents are in the public domain. Use
1389them as you see fit (and at your own risk with no warranty from anyone).
1390