ActiveState!

ActivePerl Documentation
Table of Contents

(Usage Statistics)
(about this ver)


* Getting Started
    * Welcome To ActivePerl
    * Release Notes
    * Readme
    * ActivePerl Change Log
* Install Notes
    * Linux
    * Solaris
    * Windows
* ActivePerl Components
    * Overview
    * PPM
    * Windows Specifics
       * OLE Browser
       * PerlScript
       * Perl for ISAPI
       * PerlEZ
* ActivePerl FAQ
    * Introduction
    * Availability & Install
    * Using PPM
    * Docs & Support
    * Windows Specifics
       * Perl for ISAPI
       * Windows 9X/NT/2000
       * Quirks
       * Web Server Config
       * Web programming
       * Programming
       * Modules & Samples
       * Embedding & Extending
       * Using OLE with Perl
* Windows Scripting
    * Active Server Pages
    * Windows Script Host
    * Windows Script Components

Core Perl Documentation


* perl
* perlfaq
* perltoc
* perlbook

* perlsyn
* perldata
* perlop
* perlreftut
* perldsc
* perllol

* perllexwarn
* perldebug

* perlrun
* perlfunc
* perlopentut
* perlvar
* perlsub
* perlmod
* perlpod

* perlstyle
* perlmodlib
* perlmodinstall
* perltrap
* perlport
* perlsec

* perlref
* perlre
* perlform
* perllocale
* perlunicode

* perlboot
* perltoot
* perltootc
* perlobj
* perlbot
* perltie

* perlipc
* perlnumber
* perlfork
* perlthrtut

* perldiag
* perlfaq1
* perlfaq2
* perlfaq3
* perlfaq4
* perlfaq5
* perlfaq6
* perlfaq7
* perlfaq8
* perlfaq9

* perlcompile

* perlembed
* perlxstut
* perlxs
* perlguts
* perlcall
* perlfilter
* perldbmfilter
* perlapi
* perlintern
* perlapio
* perltodo
* perlhack

* perlhist
* perldelta
* perl5005delta
* perl5004delta

* perlamiga
* perlcygwin
* perldos
* perlhpux
* perlmachten
* perlos2
* perlos390
* perlvms
* perlwin32

Pragmas


* attributes
* attrs
* autouse
* base
* blib
* bytes
* charnames
* constant
* diagnostics
* fields
* filetest
* integer
* less
* lib
* locale
* lwpcook
* open
* ops
* overload
* perllocal
* re
* sigtrap
* strict
* subs
* utf8
* vars
* warnings

Libraries


* ActivePerl
    * DocTools
        * TOC
            * RDF
* AnyDBM_File
* Archive
    * Tar
* AutoLoader
* AutoSplit
* B
    * Asmdata
    * Assembler
    * Bblock
    * Bytecode
    * C
    * CC
    * Debug
    * Deparse
    * Disassembler
    * Lint
    * Showlex
    * Stackobj
    * Terse
    * Xref
* Benchmark
* Bundle
    * LWP
* ByteLoader
* Carp
    * Heavy
* CGI
    * Apache
    * Carp
    * Cookie
    * Fast
    * Pretty
    * Push
    * Switch
* Class
    * Struct
* Compress
    * Zlib
* Config
* CPAN
    * FirstTime
    * Nox
* Cwd
* Data
    * Dumper
* DB
* Devel
    * DProf
    * Peek
    * SelfStubber
* Digest
    * HMAC
    * HMAC_MD5
    * HMAC_SHA1
    * MD2
    * MD5
    * SHA1
* DirHandle
* Dumpvalue
* DynaLoader
* English
* Env
* Errno
* Exporter
    * Heavy
* ExtUtils
    * Command
    * Embed
    * Install
    * Installed
    * Liblist
    * MakeMaker
    * Manifest
    * Miniperl
    * Mkbootstrap
    * Mksymlists
    * MM_Cygwin
    * MM_OS2
    * MM_Unix
    * MM_VMS
    * MM_Win32
    * Packlist
    * testlib
* Fatal
* Fcntl
* File
    * Basename
    * CheckTree
    * Compare
    * Copy
    * CounterFile
    * DosGlob
    * Find
    * Glob
    * Listing
    * Path
    * Spec
        * Functions
        * Mac
        * OS2
        * Unix
        * VMS
        * Win32
    * stat
* FileCache
* FileHandle
* FindBin
* Font
    * AFM
* Getopt
    * Long
    * Std
* HTML
    * AsSubs
    * Element
    * Entities
    * Filter
    * Form
    * FormatPS
    * Formatter
    * FormatText
    * HeadParser
    * LinkExtor
    * Parse
    * Parser
    * TokeParser
    * TreeBuilder
* HTTP
    * Cookies
    * Daemon
    * Date
    * Headers
        * Util
    * Message
    * Negotiate
    * Request
        * Common
    * Response
    * Status
* I18N
    * Collate
* IO
    * Dir
    * File
    * Handle
    * Pipe
    * Poll
    * Seekable
    * Select
    * Socket
        * INET
        * UNIX
* IPC
    * Msg
    * Open2
    * Open3
    * Semaphore
    * SysV
* LWP
    * Debug
    * MediaTypes
    * MemberMixin
    * Protocol
    * RobotUA
    * Simple
    * UserAgent
* Math
    * BigFloat
    * BigInt
    * Complex
    * Trig
* MD5
* MIME
    * Base64
    * QuotedPrint
* NDBM_File
* Net
    * Cmd
    * Config
    * Domain
    * DummyInetd
    * FTP
    * hostent
    * libnetFAQ
    * netent
    * Netrc
    * NNTP
    * PH
    * Ping
    * POP3
    * protoent
    * servent
    * SMTP
    * SNPP
    * Time
* O
* ODBM_File
* Opcode
* Pod
    * Checker
    * Find
    * Html
    * InputObjects
    * Man
    * Parser
    * ParseUtils
    * Plainer
    * Select
    * Text
        * Color
        * Termcap
    * Usage
* POSIX
* PPM
    * SOAPClient
    * SOAPServer
* Safe
* SDBM_File
* Search
    * Dict
* SelectSaver
* SelfLoader
* SHA
* Shell
* SOAP
    * Defs
    * Envelope
    * EnvelopeMaker
    * GenericHashSerializer
    * GenericInputStream
    * GenericScalarSerializer
    * Lite
    * OutputStream
    * Packager
    * Parser
    * Transport
        * HTTP
            * Apache
            * CGI
            * Client
            * Server
        * LOCAL
        * MAILTO
        * POP3
        * TCP
    * TypeMapper
* Socket
* Symbol
* Sys
    * Hostname
    * Syslog
* Term
    * ANSIColor
    * Cap
    * Complete
    * ReadLine
* Test
    * Harness
* Text
    * Abbrev
    * ParseWords
    * Soundex
    * Tabs
    * Wrap
* Thread
    * Queue
    * Semaphore
    * Signal
    * Specific
* Tie
    * Array
    * Handle
    * Hash
    * RefHash
    * Scalar
    * SubstrHash
* Time
    * gmtime
    * Local
    * localtime
    * tm
* UDDI
    * Lite
* UNIVERSAL
* URI
    * data
    * Escape
    * file
    * Heuristic
    * ldap
    * URL
    * WithBase
* User
    * grent
    * pwent
* Win32
    * AuthenticateUser
    * ChangeNotify
    * Clipboard
    * Console
    * Event
    * EventLog
    * File
    * FileSecurity
    * Internet
    * IPC
    * Mutex
    * NetAdmin
    * NetResource
    * ODBC
    * OLE
        * Const
        * Enum
        * NEWS
        * NLS
        * TPJ
        * Variant
    * PerfLib
    * Pipe
    * Process
    * Registry
    * Semaphore
    * Service
    * Sound
    * TieRegistry
* Win32API
    * File
    * Net
    * Registry
* WWW
    * RobotRules
        * AnyDBM_File
* XML
    * Element
    * Parser
        * Expat
    * PPD
    * PPMConfig
    * ValidatingElement
* XSLoader

 ActivePerl FAQ


NAME

ActivePerl-faq3 - Documentation and Support


DESCRIPTION

ActivePerl Documentation and Support


Where can I get documentation on ActivePerl?

Documentation for ActivePerl is provided in Html format in the Html directory in your perl directory. This has the documentation from the standard perl distribution, as well as the complete documentation for modules and extensions. For more information on Win32-specific extensions, see What modules come with the ActivePerl distribution?.

Note that the standard perl distribution documentation (perl*.html) has some UNIX-specific information, and lists some features/functions that will not work on the Windows version of ActivePerl. The perlwin32 and perlport pages discuss the portability issues under the Win32 platform.

You can also read the Perl documentation with the perldoc command. At the command prompt, type perldoc followed by the name of the document you want to read, as in:

    perldoc perlwin32
    perldoc perlfaq

Documentation is provided in the binary distributions (it is created during install), and can be created by install or it can be made by "make installhtml" in the source distribution.


What kind of documentation comes with ActivePerl?

ActivePerl comes with the standard Perl documentation, as well as documentation for all Core modules.


Is there formal support for ActivePerl or PerlIS?

Peer support is available from the Perl related mailing lists that ActiveState hosts. You can find more information on these mailing lists at http://www.ActiveState.com/support/

For mission critical support, please consult the Perl Clinic at http://www.PerlClinic.com

The Perl Clinic offers fee-based support for all of your Perl ailments.


Are there information sources available on ActivePerl on the World Wide Web?

There are several web pages devoted to ActivePerl. Here is a short listing:


Is there a mailing list for ActivePerl or Perl for ISAPI?

ActiveState hosts a variety of mailing lists for the ActivePerl community. More information can be found at http://www.activestate.com/support/mailing_lists.htm

Archives of the mailing lists can also be found on the ActiveState web site.

You should check the archives or a FAQ like this (see Is there a FAQ for ActivePerl?) before posting a question to the mailing list. List members are mostly overworked programmers and admins like yourself. So, for best results, be courteous, specific, and show that you really have tried to figure out your problems for yourself.


Is there a Usenet newsgroup devoted to ActivePerl issues?

Not yet. You can use comp.lang.perl.misc for miscellaneous Perl questions; the members of most Usenet Perl newsgroups tend to concentrate on UNIX platforms.

Try the perl-win32-users mailing list (see Is there a mailing list for ActivePerl or PerlIS?) for more specific Win32 information.

For web server setup and CGI programming, try one of the following three newsgroups:

    comp.infosystems.www.servers.ms-windows
    comp.infosystems.www.authoring.cgi
    comp.infosystems.www.authoring.misc

Is there a FAQ for ActivePerl?

You are reading one of them. Also, Perl is shipped with the main PerlFAQ inside the help system, which is over a hundred pages long and split into several parts.

Robin Chatterjee's Perl for Win32 page contains frequently asked questions and copies of the perl-win32-users mailing list responses to them:

    http://www.geocities.com/SiliconValley/Park/8312/

How do I report a bug in ActivePerl?

The ActiveState bug reporting system can be found at http://bugs.ActiveState.com

Before you report a bug to this location, you need to do several things:

  • Make sure it's a real bug, and not a logic error in your program.

  • Make sure it's a real bug, and not just a misunderstanding about how Perl works. Check the mailing list archives and FAQs, so you can see if someone else has come across this problem. ALWAYS do this first, even if you are otherwise certain that it is a real bug. Most bugs reported to ActiveState are not bugs and could be solved by looking through the list archives or FAQs.

  • You can also use www.dejanews.com to search comp.lang.perl.misc. If this is a problem that has been discussed in the newsgroup, your answer may be there. After exhausting these possibilities, you may want to post to one of the mailing lists to see if other people might have an answer. See also Can I ask a question? ... or ... How do I ask a question?

  • You should check the bug list to see if your bug has already been reported or fixed.

  • You need to be able to reproduce the bug. If it just happens once, then it is not a bug. This needs to be clear: if it can't be repeated then it is not a bug.

  • Create a short, simple script as an example of the bug. Do not send the original source code as your example - do what you can to reduce the example to the smallest possible case. This process has been known to reveal errors that have been cleverly masquerading as bugs.

  • It should not be necessary to do much setup for ActiveState bug testers to reproduce your bug. If setup or example data files are required, prepare simple instructions.

  • Once all this is done, you should send your bug report to ActiveState, stating clearly the nature of the bug, how to reproduce it, and what platform, operating system, and perl version is causing the problem. Remember that your goal is to give ActiveState enough information to reproduce the bug. If it is not reproducible, it can't be considered a bug.

  • You should get email about the status of your bug as it goes through the process of verification and fixing.

  • Do not submit the same bug more than once.

    Submit bugs here.


Can I ask a question? ... or ... How do I ask a question?

The etiquette for question asking is about the same whether you're working with mailing lists, newsgroups, chatrooms, or IRC channels. Here are some pointers that will help you get your questions answered.

  • Do your own study before you ask a question. Buy a book (or more than one... O'Reilly has lots to choose from), read the online help, and search the web for yourself. If you don't have time to try to find find the answer yourself, these folks won't have time to answer you.

  • Check the FAQ first - if the question has already been answered in the FAQ, you may not get an answer to it if you ask it in a public forum.

  • Never ask, "Can I ask a question?", because that is a sure sign that the person doing the asking is a newbie. People on IRC and newsgroups get bored with newbies because they always seem to ask and never seem to do their own study.

  • Read the mailing list or newsgroup for a while before you ask a question. If you need to ask a question immediately, and you've never read the newsgroup or mailing list, read the mailing list archives or use www.dejanews.com to read old messages posted to the newsgroup. This will familiarize you with the way people ask questions in the particular newsgroup or mailing list you want to post to. If your question has come up before, there is a good chance it has been answered before - the newsgroup or mailing list archives will turn up these answers if you search them carefully.

  • Ask your question directly. Plan your question beforehand, then just come right out and ask it. It might seem rude just to blurt out a question like that, but it's the way it's done.


Are there any live chats where I can talk about Perl stuff?

For UNIX or more general perl programming discussion, you can try out #perl on EFNet (the big one) and UnderNet. Be careful of EFNet #perl though. There are a number of discussion topics that are not tolerated there: Win32-specific Perl issues, non-programmer questions (e.g., I just downloaded this neat script - how do I make it work?), and CGI/WWW programming. EFNet #perl is a good place to meet some Perl masters, however, like Tom Christiansen (tchrist) and Randall Schwartz (q[merlyn]). I've never seen Larry on there but I'm told he does come on from time to time.

In any of these IRC channels, you need to do your own work, and try to solve your own problems. Don't go in expecting someone to look over some neat script you downloaded and want to get working if you "just want it to work and don't have time to learn perl". That kind of attitude is an easy way to get banned from the channel. The members of these channels are overworked Perl programmers with little tolerance for people who want others to do their work for them.

After you ask a question, you should stick around and chat for a while. It's polite, and a very good way to learn "perl style", or how perl programmers think about everyday things.


AUTHOR AND COPYRIGHT

This FAQ was originally assembled and maintained by Evangelo Prodromou. It has been revised and updated by Brian Jepson of O'Reilly & Associates, David Grove, David Dmytryshyn and David Sparks of ActiveState.

This FAQ is in the public domain. If you use it, however, please ensure that you give credit to the original authors.

 ActivePerl FAQ