You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
532 lines
22 KiB
532 lines
22 KiB
=head1 NAME
|
|
|
|
perlfaq2 - Obtaining and Learning about Perl ($Revision: 1.32 $, $Date: 1999/10/14 18:46:09 $)
|
|
|
|
=head1 DESCRIPTION
|
|
|
|
This section of the FAQ answers questions about where to find
|
|
source and documentation for Perl, support, and
|
|
related matters.
|
|
|
|
=head2 What machines support Perl? Where do I get it?
|
|
|
|
The standard release of Perl (the one maintained by the perl
|
|
development team) is distributed only in source code form. You
|
|
can find this at http://www.cpan.org/src/latest.tar.gz , which
|
|
is in a standard Internet format (a gzipped archive in POSIX tar format).
|
|
|
|
Perl builds and runs on a bewildering number of platforms. Virtually
|
|
all known and current Unix derivatives are supported (Perl's native
|
|
platform), as are other systems like VMS, DOS, OS/2, Windows,
|
|
QNX, BeOS, OS X, MPE/iX and the Amiga.
|
|
|
|
Binary distributions for some proprietary platforms, including
|
|
Apple systems, can be found http://www.cpan.org/ports/ directory.
|
|
Because these are not part of the standard distribution, they may
|
|
and in fact do differ from the base Perl port in a variety of ways.
|
|
You'll have to check their respective release notes to see just
|
|
what the differences are. These differences can be either positive
|
|
(e.g. extensions for the features of the particular platform that
|
|
are not supported in the source release of perl) or negative (e.g.
|
|
might be based upon a less current source release of perl).
|
|
|
|
=head2 How can I get a binary version of Perl?
|
|
|
|
If you don't have a C compiler because your vendor for whatever
|
|
reasons did not include one with your system, the best thing to do is
|
|
grab a binary version of gcc from the net and use that to compile perl
|
|
with. CPAN only has binaries for systems that are terribly hard to
|
|
get free compilers for, not for Unix systems.
|
|
|
|
Some URLs that might help you are:
|
|
|
|
http://www.cpan.org/ports/
|
|
http://language.perl.com/info/software.html
|
|
|
|
Someone looking for a Perl for Win16 might look to Laszlo Molnar's djgpp
|
|
port in http://www.cpan.org/ports/#msdos , which comes with clear
|
|
installation instructions. A simple installation guide for MS-DOS using
|
|
Ilya Zakharevich's OS/2 port is available at
|
|
http://www.cs.ruu.nl/%7Epiet/perl5dos.html
|
|
and similarly for Windows 3.1 at http://www.cs.ruu.nl/%7Epiet/perlwin3.html .
|
|
|
|
=head2 I don't have a C compiler on my system. How can I compile perl?
|
|
|
|
Since you don't have a C compiler, you're doomed and your vendor
|
|
should be sacrificed to the Sun gods. But that doesn't help you.
|
|
|
|
What you need to do is get a binary version of gcc for your system
|
|
first. Consult the Usenet FAQs for your operating system for
|
|
information on where to get such a binary version.
|
|
|
|
=head2 I copied the Perl binary from one machine to another, but scripts don't work.
|
|
|
|
That's probably because you forgot libraries, or library paths differ.
|
|
You really should build the whole distribution on the machine it will
|
|
eventually live on, and then type C<make install>. Most other
|
|
approaches are doomed to failure.
|
|
|
|
One simple way to check that things are in the right place is to print out
|
|
the hard-coded @INC that perl looks through for libraries:
|
|
|
|
% perl -e 'print join("\n",@INC)'
|
|
|
|
If this command lists any paths that don't exist on your system, then you
|
|
may need to move the appropriate libraries to these locations, or create
|
|
symbolic links, aliases, or shortcuts appropriately. @INC is also printed as
|
|
part of the output of
|
|
|
|
% perl -V
|
|
|
|
You might also want to check out
|
|
L<perlfaq8/"How do I keep my own module/library directory?">.
|
|
|
|
=head2 I grabbed the sources and tried to compile but gdbm/dynamic loading/malloc/linking/... failed. How do I make it work?
|
|
|
|
Read the F<INSTALL> file, which is part of the source distribution.
|
|
It describes in detail how to cope with most idiosyncrasies that the
|
|
Configure script can't work around for any given system or
|
|
architecture.
|
|
|
|
=head2 What modules and extensions are available for Perl? What is CPAN? What does CPAN/src/... mean?
|
|
|
|
CPAN stands for Comprehensive Perl Archive Network, a ~700mb archive
|
|
replicated on nearly 200 machines all over the world. CPAN contains
|
|
source code, non-native ports, documentation, scripts, and many
|
|
third-party modules and extensions, designed for everything from
|
|
commercial database interfaces to keyboard/screen control to web
|
|
walking and CGI scripts. The master web site for CPAN is
|
|
http://www.cpan.org/ and there is the CPAN Multiplexer at
|
|
http://www.perl.com/CPAN/CPAN.html which will choose a mirror near you
|
|
via DNS. See http://www.perl.com/CPAN (without a slash at the
|
|
end) for how this process works. Also, http://mirror.cpan.org/
|
|
has a nice interface to the http://www.cpan.org/MIRRORED.BY
|
|
mirror directory.
|
|
|
|
See the CPAN FAQ at http://www.cpan.org/misc/cpan-faq.html for
|
|
answers to the most frequently asked questions about CPAN
|
|
including how to become a mirror.
|
|
|
|
CPAN/path/... is a naming convention for files available on CPAN
|
|
sites. CPAN indicates the base directory of a CPAN mirror, and the
|
|
rest of the path is the path from that directory to the file. For
|
|
instance, if you're using ftp://ftp.funet.fi/pub/languages/perl/CPAN
|
|
as your CPAN site, the file CPAN/misc/japh is downloadable as
|
|
ftp://ftp.funet.fi/pub/languages/perl/CPAN/misc/japh .
|
|
|
|
Considering that there are close to two thousand existing modules in
|
|
the archive, one probably exists to do nearly anything you can think of.
|
|
Current categories under CPAN/modules/by-category/ include Perl core
|
|
modules; development support; operating system interfaces; networking,
|
|
devices, and interprocess communication; data type utilities; database
|
|
interfaces; user interfaces; interfaces to other languages; filenames,
|
|
file systems, and file locking; internationalization and locale; world
|
|
wide web support; server and daemon utilities; archiving and
|
|
compression; image manipulation; mail and news; control flow
|
|
utilities; filehandle and I/O; Microsoft Windows modules; and
|
|
miscellaneous modules.
|
|
|
|
See http://www.cpan.org/modules/00modlist.long.html or
|
|
http://search.cpan.org/ for a more complete list of modules by category.
|
|
|
|
|
|
=head2 Is there an ISO or ANSI certified version of Perl?
|
|
|
|
Certainly not. Larry expects that he'll be certified before Perl is.
|
|
|
|
=head2 Where can I get information on Perl?
|
|
|
|
The complete Perl documentation is available with the Perl distribution.
|
|
If you have Perl installed locally, you probably have the documentation
|
|
installed as well: type C<man perl> if you're on a system resembling Unix.
|
|
This will lead you to other important man pages, including how to set your
|
|
$MANPATH. If you're not on a Unix system, access to the documentation
|
|
will be different; for example, documentation might only be in HTML format. All
|
|
proper Perl installations have fully-accessible documentation.
|
|
|
|
You might also try C<perldoc perl> in case your system doesn't
|
|
have a proper man command, or it's been misinstalled. If that doesn't
|
|
work, try looking in /usr/local/lib/perl5/pod for documentation.
|
|
|
|
If all else fails, consult http://perldoc.cpan.org/ or
|
|
http://www.perldoc.com/ both offer the complete documentation
|
|
in html format.
|
|
|
|
Many good books have been written about Perl--see the section below
|
|
for more details.
|
|
|
|
Tutorial documents are included in current or upcoming Perl releases
|
|
include L<perltoot> for objects or L<perlboot> for a beginner's
|
|
approach to objects, L<perlopentut> for file opening semantics,
|
|
L<perlreftut> for managing references, L<perlretut> for regular
|
|
expressions, L<perlthrtut> for threads, L<perldebtut> for debugging,
|
|
and L<perlxstut> for linking C and Perl together. There may be more
|
|
by the time you read this. The following URLs might also be of
|
|
assistance:
|
|
|
|
http://perldoc.cpan.org/
|
|
http://www.perldoc.com/
|
|
http://reference.perl.com/query.cgi?tutorials
|
|
http://bookmarks.cpan.org/search.cgi?cat=Training%2FTutorials
|
|
|
|
=head2 What are the Perl newsgroups on Usenet? Where do I post questions?
|
|
|
|
The now defunct comp.lang.perl newsgroup has been superseded by the
|
|
following groups:
|
|
|
|
comp.lang.perl.announce Moderated announcement group
|
|
comp.lang.perl.misc Very busy group about Perl in general
|
|
comp.lang.perl.moderated Moderated discussion group
|
|
comp.lang.perl.modules Use and development of Perl modules
|
|
comp.lang.perl.tk Using Tk (and X) from Perl
|
|
|
|
comp.infosystems.www.authoring.cgi Writing CGI scripts for the Web.
|
|
|
|
There is also Usenet gateway to the mailing list used by the crack
|
|
Perl development team (perl5-porters) at
|
|
news://news.perl.com/perl.porters-gw/ .
|
|
|
|
=head2 Where should I post source code?
|
|
|
|
You should post source code to whichever group is most appropriate, but
|
|
feel free to cross-post to comp.lang.perl.misc. If you want to cross-post
|
|
to alt.sources, please make sure it follows their posting standards,
|
|
including setting the Followup-To header line to NOT include alt.sources;
|
|
see their FAQ (http://www.faqs.org/faqs/alt-sources-intro/) for details.
|
|
|
|
If you're just looking for software, first use Google
|
|
(http://www.google.com), Deja (http://www.deja.com), and
|
|
CPAN Search (http://search.cpan.org). This is faster and more
|
|
productive than just posting a request.
|
|
|
|
=head2 Perl Books
|
|
|
|
A number of books on Perl and/or CGI programming are available. A few of
|
|
these are good, some are OK, but many aren't worth your money. Tom
|
|
Christiansen maintains a list of these books, some with extensive
|
|
reviews, at http://www.perl.com/perl/critiques/index.html .
|
|
|
|
The incontestably definitive reference book on Perl, written by
|
|
the creator of Perl, is now (July 2000) in its third edition:
|
|
|
|
Programming Perl (the "Camel Book"):
|
|
by Larry Wall, Tom Christiansen, and Jon Orwant
|
|
0-596-00027-8 [3rd edition July 2000]
|
|
http://www.oreilly.com/catalog/pperl3/
|
|
(English, translations to several languages are also available)
|
|
|
|
The companion volume to the Camel containing thousands
|
|
of real-world examples, mini-tutorials, and complete programs is:
|
|
|
|
The Perl Cookbook (the "Ram Book"):
|
|
by Tom Christiansen and Nathan Torkington,
|
|
with Foreword by Larry Wall
|
|
ISBN 1-56592-243-3 [1st Edition August 1998]
|
|
http://perl.oreilly.com/cookbook/
|
|
|
|
If you're already a hard-core systems programmer, then the Camel Book
|
|
might suffice for you to learn Perl from. If you're not, check out
|
|
|
|
Learning Perl (the "Llama Book"):
|
|
by Randal Schwartz and Tom Christiansen
|
|
with Foreword by Larry Wall
|
|
ISBN 1-56592-284-0 [2nd Edition July 1997]
|
|
http://www.oreilly.com/catalog/lperl2/
|
|
|
|
Despite the picture at the URL above, the second edition of "Llama
|
|
Book" really has a blue cover and was updated for the 5.004 release
|
|
of Perl. Various foreign language editions are available, including
|
|
I<Learning Perl on Win32 Systems> (the "Gecko Book").
|
|
|
|
If you're not an accidental programmer, but a more serious and possibly
|
|
even degreed computer scientist who doesn't need as much hand-holding as
|
|
we try to provide in the Llama or its defurred cousin the Gecko, please
|
|
check out the delightful book, I<Perl: The Programmer's Companion>,
|
|
written by Nigel Chapman.
|
|
|
|
Addison-Wesley (http://www.awlonline.com/) and Manning
|
|
(http://www.manning.com/) are also publishers of some fine Perl books
|
|
such as Object Oriented Programming with Perl by Damian Conway and
|
|
Network Programming with Perl by Lincoln Stein.
|
|
|
|
An excellent technical book discounter is Bookpool at
|
|
http://www.bookpool.com/ where a 30% discount or more is not unusual.
|
|
|
|
What follows is a list of the books that the FAQ authors found personally
|
|
useful. Your mileage may (but, we hope, probably won't) vary.
|
|
|
|
Recommended books on (or mostly on) Perl follow.
|
|
|
|
=over 4
|
|
|
|
=item References
|
|
|
|
Programming Perl
|
|
by Larry Wall, Tom Christiansen, and Jon Orwant
|
|
ISBN 0-596-00027-8 [3rd edition July 2000]
|
|
http://www.oreilly.com/catalog/pperl3/
|
|
|
|
Perl 5 Pocket Reference
|
|
by Johan Vromans
|
|
ISBN 0-596-00032-4 [3rd edition May 2000]
|
|
http://www.oreilly.com/catalog/perlpr3/
|
|
|
|
Perl in a Nutshell
|
|
by Ellen Siever, Stephan Spainhour, and Nathan Patwardhan
|
|
ISBN 1-56592-286-7 [1st edition December 1998]
|
|
http://www.oreilly.com/catalog/perlnut/
|
|
|
|
=item Tutorials
|
|
|
|
Elements of Programming with Perl
|
|
by Andrew L. Johnson
|
|
ISBN 1884777805 [1st edition October 1999]
|
|
http://www.manning.com/Johnson/
|
|
|
|
Learning Perl
|
|
by Randal L. Schwartz and Tom Christiansen
|
|
with foreword by Larry Wall
|
|
ISBN 1-56592-284-0 [2nd edition July 1997]
|
|
http://www.oreilly.com/catalog/lperl2/
|
|
|
|
Learning Perl on Win32 Systems
|
|
by Randal L. Schwartz, Erik Olson, and Tom Christiansen,
|
|
with foreword by Larry Wall
|
|
ISBN 1-56592-324-3 [1st edition August 1997]
|
|
http://www.oreilly.com/catalog/lperlwin/
|
|
|
|
Perl: The Programmer's Companion
|
|
by Nigel Chapman
|
|
ISBN 0-471-97563-X [1st edition October 1997]
|
|
http://catalog.wiley.com/title.cgi?isbn=047197563X
|
|
|
|
Cross-Platform Perl
|
|
by Eric Foster-Johnson
|
|
ISBN 1-55851-483-X [2nd edition September 2000]
|
|
http://www.pconline.com/~erc/perlbook.htm
|
|
|
|
MacPerl: Power and Ease
|
|
by Vicki Brown and Chris Nandor,
|
|
with foreword by Matthias Neeracher
|
|
ISBN 1-881957-32-2 [1st edition May 1998]
|
|
http://www.macperl.com/ptf_book/
|
|
|
|
=item Task-Oriented
|
|
|
|
The Perl Cookbook
|
|
by Tom Christiansen and Nathan Torkington
|
|
with foreword by Larry Wall
|
|
ISBN 1-56592-243-3 [1st edition August 1998]
|
|
http://www.oreilly.com/catalog/cookbook/
|
|
|
|
Effective Perl Programming
|
|
by Joseph Hall
|
|
ISBN 0-201-41975-0 [1st edition 1998]
|
|
http://www.awl.com/
|
|
|
|
|
|
=item Special Topics
|
|
|
|
Mastering Regular Expressions
|
|
by Jeffrey E. F. Friedl
|
|
ISBN 1-56592-257-3 [1st edition January 1997]
|
|
http://www.oreilly.com/catalog/regex/
|
|
|
|
Network Programming with Perl
|
|
by Lincoln Stein
|
|
ISBN 0-201-61571-1 [1st edition 2001]
|
|
http://www.awlonline.com/
|
|
|
|
Object Oriented Perl
|
|
Damian Conway
|
|
with foreword by Randal L. Schwartz
|
|
ISBN 1884777791 [1st edition August 1999]
|
|
http://www.manning.com/Conway/
|
|
|
|
Data Munging with Perl
|
|
Dave Cross
|
|
ISBN 1930110006 [1st edition 2001]
|
|
http://www.manning.com/cross
|
|
|
|
Learning Perl/Tk
|
|
by Nancy Walsh
|
|
ISBN 1-56592-314-6 [1st edition January 1999]
|
|
http://www.oreilly.com/catalog/lperltk/
|
|
|
|
=back
|
|
|
|
=head2 Perl in Magazines
|
|
|
|
The first and only periodical devoted to All Things Perl, I<The
|
|
Perl Journal> contained tutorials, demonstrations, case studies,
|
|
announcements, contests, and much more. I<TPJ> had columns on web
|
|
development, databases, Win32 Perl, graphical programming, regular
|
|
expressions, and networking, and sponsored the Obfuscated Perl
|
|
Contest. Sadly, this publication is no longer in circulation, but
|
|
should it be resurrected, it will most likely be announced on
|
|
http://use.perl.org/ .
|
|
|
|
Beyond this, magazines that frequently carry high-quality articles
|
|
on Perl are I<Web Techniques> (see http://www.webtechniques.com/),
|
|
I<Performance Computing> (http://www.performance-computing.com/), and Usenix's
|
|
newsletter/magazine to its members, I<login:>, at http://www.usenix.org/.
|
|
Randal's Web Technique's columns are available on the web at
|
|
http://www.stonehenge.com/merlyn/WebTechniques/ .
|
|
|
|
=head2 Perl on the Net: FTP and WWW Access
|
|
|
|
To get the best performance, pick a site from
|
|
the list below and use it to grab the complete list of mirror sites
|
|
which is at /CPAN/MIRRORED.BY or at http://mirror.cpan.org/.
|
|
From there you can find the quickest site for you. Remember, the
|
|
following list is I<not> the complete list of CPAN mirrors
|
|
(the complete list contains 165 sites as of January 2001):
|
|
|
|
http://www.cpan.org/
|
|
http://www.perl.com/CPAN/
|
|
http://download.sourceforge.net/mirrors/CPAN/
|
|
ftp://ftp.digital.com/pub/plan/perl/CPAN/
|
|
ftp://ftp.flirble.org/pub/languages/perl/CPAN/
|
|
ftp://ftp.uvsq.fr/pub/perl/CPAN/
|
|
ftp://ftp.funet.fi/pub/languages/perl/CPAN/
|
|
ftp://ftp.dti.ad.jp/pub/lang/CPAN/
|
|
ftp://mirror.aarnet.edu.au/pub/perl/CPAN/
|
|
ftp://cpan.if.usp.br/pub/mirror/CPAN/
|
|
|
|
One may also use xx.cpan.org where "xx" is the 2-letter country code
|
|
for your domain; e.g. Australia would use au.cpan.org.
|
|
|
|
=head2 What mailing lists are there for Perl?
|
|
|
|
Most of the major modules (Tk, CGI, libwww-perl) have their own
|
|
mailing lists. Consult the documentation that came with the module for
|
|
subscription information.
|
|
|
|
http://lists.cpan.org/
|
|
|
|
=head2 Archives of comp.lang.perl.misc
|
|
|
|
Have you tried Deja or AltaVista? Those are the
|
|
best archives. Just look up "*perl*" as a newsgroup.
|
|
|
|
http://www.deja.com/dnquery.xp?QRY=&DBS=2&ST=PS&defaultOp=AND&LNG=ALL&format=terse&showsort=date&maxhits=25&subjects=&groups=*perl*&authors=&fromdate=&todate=
|
|
|
|
You might want to trim that down a bit, though.
|
|
|
|
You'll probably want more a sophisticated query and retrieval mechanism
|
|
than a file listing, preferably one that allows you to retrieve
|
|
articles using a fast-access indices, keyed on at least author, date,
|
|
subject, thread (as in "trn") and probably keywords. The best
|
|
solution the FAQ authors know of is the MH pick command, but it is
|
|
very slow to select on 18000 articles.
|
|
|
|
If you have, or know where can be found, the missing sections, please
|
|
let [email protected] know.
|
|
|
|
=head2 Where can I buy a commercial version of Perl?
|
|
|
|
In a real sense, Perl already I<is> commercial software: it has a license
|
|
that you can grab and carefully read to your manager. It is distributed
|
|
in releases and comes in well-defined packages. There is a very large
|
|
user community and an extensive literature. The comp.lang.perl.*
|
|
newsgroups and several of the mailing lists provide free answers to your
|
|
questions in near real-time. Perl has traditionally been supported by
|
|
Larry, scores of software designers and developers, and myriads of
|
|
programmers, all working for free to create a useful thing to make life
|
|
better for everyone.
|
|
|
|
However, these answers may not suffice for managers who require a
|
|
purchase order from a company whom they can sue should anything go awry.
|
|
Or maybe they need very serious hand-holding and contractual obligations.
|
|
Shrink-wrapped CDs with Perl on them are available from several sources if
|
|
that will help. For example, many Perl books include a distribution of Perl,
|
|
as do the O'Reilly Perl Resource Kits (in both the Unix flavor
|
|
and in the proprietary Microsoft flavor); the free Unix distributions
|
|
also all come with Perl.
|
|
|
|
Alternatively, you can purchase commercial incidence based support
|
|
through the Perl Clinic. The following is a commercial from them:
|
|
|
|
"The Perl Clinic is a commercial Perl support service operated by
|
|
ActiveState Tool Corp. and The Ingram Group. The operators have many
|
|
years of in-depth experience with Perl applications and Perl internals
|
|
on a wide range of platforms.
|
|
|
|
"Through our group of highly experienced and well-trained support engineers,
|
|
we will put our best effort into understanding your problem, providing an
|
|
explanation of the situation, and a recommendation on how to proceed."
|
|
|
|
Contact The Perl Clinic at
|
|
|
|
www.PerlClinic.com
|
|
|
|
North America Pacific Standard Time (GMT-8)
|
|
Tel: 1 604 606-4611 hours 8am-6pm
|
|
Fax: 1 604 606-4640
|
|
|
|
Europe (GMT)
|
|
Tel: 00 44 1483 862814
|
|
Fax: 00 44 1483 862801
|
|
|
|
See also www.perl.com for updates on tutorials, training, and support.
|
|
|
|
=head2 Where do I send bug reports?
|
|
|
|
If you are reporting a bug in the perl interpreter or the modules
|
|
shipped with Perl, use the I<perlbug> program in the Perl distribution or
|
|
mail your report to [email protected] .
|
|
|
|
If you are posting a bug with a non-standard port (see the answer to
|
|
"What platforms is Perl available for?"), a binary distribution, or a
|
|
non-standard module (such as Tk, CGI, etc), then please see the
|
|
documentation that came with it to determine the correct place to post
|
|
bugs.
|
|
|
|
Read the perlbug(1) man page (perl5.004 or later) for more information.
|
|
|
|
=head2 What is perl.com? Perl Mongers? pm.org? perl.org?
|
|
|
|
The Perl Home Page at http://www.perl.com/ is currently hosted on a
|
|
T3 line courtesy of Songline Systems, a software-oriented subsidiary of
|
|
O'Reilly and Associates. Other starting points include
|
|
|
|
http://language.perl.com/
|
|
http://conference.perl.com/
|
|
http://reference.perl.com/
|
|
|
|
Perl Mongers is an advocacy organization for the Perl language which
|
|
maintains the web site http://www.perl.org/ as a general advocacy
|
|
site for the Perl language.
|
|
|
|
Perl Mongers uses the pm.org domain for services related to Perl user
|
|
groups, including the hosting of mailing lists and web sites. See the
|
|
Perl user group web site at http://www.pm.org/ for more information about
|
|
joining, starting, or requesting services for a Perl user group.
|
|
|
|
Perl Mongers also maintain the perl.org domain to provide general
|
|
support services to the Perl community, including the hosting of mailing
|
|
lists, web sites, and other services. The web site
|
|
http://www.perl.org/ is a general advocacy site for the Perl language,
|
|
and there are many other sub-domains for special topics, such as
|
|
|
|
http://bugs.perl.org/
|
|
http://history.perl.org/
|
|
http://lists.perl.org/
|
|
http://news.perl.org/
|
|
http://use.perl.org/
|
|
|
|
=head1 AUTHOR AND COPYRIGHT
|
|
|
|
Copyright (c) 1997-2001 Tom Christiansen and Nathan Torkington.
|
|
All rights reserved.
|
|
|
|
When included as an integrated part of the Standard Distribution
|
|
of Perl or of its documentation (printed or otherwise), this works is
|
|
covered under Perl's Artistic License. For separate distributions of
|
|
all or part of this FAQ outside of that, see L<perlfaq>.
|
|
|
|
Irrespective of its distribution, all code examples here are in the public
|
|
domain. You are permitted and encouraged to use this code and any
|
|
derivatives thereof in your own programs for fun or for profit as you
|
|
see fit. A simple comment in the code giving credit to the FAQ would
|
|
be courteous but is not required.
|