-
Getting Started
-
Chapter 1 Introduction to Perl
- What's Perl Good For?
- Perl Development
- Which Platforms Support Perl?
- Perl Resources
-
Chapter 2 Installing Perl
- The CPAN Architecture
- How Is CPAN Organized?
- Installing Perl
- Getting and Installing Modules
- Documentation
-
-
Language Basics
-
Chapter 3 The Perl Executable
- Command Processing
- Command-Line Options
- Environment Variables
- The Perl Compiler
- Threads
-
Chapter 4 The Perl Language
- Program Structure
- Data Types and Variables
- Statements
- Special Variables
- Operators
- Regular Expressions
- Subroutines
- References and Complex Data Structures
- Filehandles
- Signals
- Unicode
- Formats
- Pod
-
Chapter 5 Function Reference
- Perl Functions by Category
- abs
- accept
- alarm
- atan2
- bind
- binmode
- bless
- caller
- chdir
- chmod
- chomp
- chop
- chown
- chr
- chroot
- close
- closedir
- connect
- cos
- crypt
- dbmclose
- dbmopen
- defined
- delete
- die
- do
- dump
- each
- endgrent
- endhostent
- endnetent
- endprotoent
- endpwent
- endservent
- eof
- eval
- exec
- exists
- exit
- exp
- fcntl
- fileno
- flock
- fork
- formline
- getc
- getgrent
- getgrgid
- getgrnam
- gethostbyaddr
- gethostbyname
- gethostent
- getlogin
- getnetbyaddr
- getnetbyname
- getnetent
- getpeername
- getpgrp
- getppid
- getpriority
- getprotobyname
- getprotobynumber
- getprotoent
- getpwent
- getpwnam
- getpwuid
- getservbyname
- getservbyport
- getservent
- getsockname
- getsockopt
- glob
- gmtime
- goto
- grep
- hex
- index
- int
- ioctl
- join
- keys
- kill
- last
- lc
- lcfirst
- length
- link
- listen
- local
- localtime
- log
- lstat
- map
- mkdir
- msgctl
- msgget
- msgrcv
- msgsnd
- my
- next
- no
- oct
- open
- opendir
- ord
- our
- pack
- package
- pipe
- pop
- pos
- printf
- prototype
- push
- q/string/
- quotemeta
- rand
- read
- readdir
- readline
- readlink
- readpipe
- recv
- redo
- ref
- rename
- require
- reset
- return
- reverse
- rewinddir
- rindex
- rmdir
- scalar
- seek
- seekdir
- select
- select
- semctl
- semget
- semop
- send
- sethostent
- setgrent
- setnetent
- setpgrp
- setpriority
- setprotoent
- setpwent
- setservent
- setsockopt
- shift
- shmctl
- shmget
- shmread
- shmwrite
- shutdown
- sin
- sleep
- socket
- socketpair
- sort
- splice
- split
- sprintf
- sqrt
- srand
- stat
- study
- sub
- substr
- symlink
- syscall
- sysopen
- sysread
- sysseek
- system
- syswrite
- tell
- telldir
- tie
- tied
- time
- times
- truncate
- uc
- ucfirst
- umask
- undef
- unlink
- unpack
- unshift
- untie
- use
- utime
- values
- vec
- wait
- waitpid
- wantarray
- warn
- write
-
Chapter 6 Debugging
- The Perl Debugger
- Debugger Commands
- Using the Debugger
- Customizing the Debugger
- The Perl Profiler
- The perlbug Program
-
-
Modules
-
Chapter 7 Packages, Modules, and Objects
- Namespaces and Packages
- Modules
- Object-Oriented Perl
- Object Syntax
-
Chapter 8 Standard Modules
- AnyDBM_File
- Attribute::Handlers
- attributes
- attrs
- AutoLoader
- AutoSplit
- autouse
- B
- B::Asmdata
- B::Assembler
- B::Bblock
- B::Bytecode
- B::C
- B::CC
- B::Concise
- B::Debug
- B::Deparse
- B::Disassembler
- B::Lint
- B::Showlex
- B::Stackobj
- B::Terse
- B::Xref
- base
- Benchmark
- bigint
- bignum
- bigrat
- blib
- bytes
- ByteLoader
- Carp
- CGI
- CGI::Apache
- CGI::Carp
- CGI::Cookie
- CGI::Fast
- CGI::Pretty
- CGI::Push
- CGI::Switch
- charnames
- Class::ISA
- Class::Struct
- Config
- constant
- CPAN
- CPAN::FirstTime
- CPAN::Nox
- Cwd
- Data::Dumper
- DB
- DB_File
- Devel::DProf
- Devel::PPPort
- Devel::SelfStubber
- diagnostics
- Digest
- Digest::MD5
- DirHandle
- Dumpvalue
- DynaLoader
- encoding
- English
- Env
- Errno
- Exporter
- ExtUtils::Command
- ExtUtils::Command::MM
- ExtUtils::Constant
- ExtUtils::Embed
- ExtUtils::Install
- ExtUtils::Installed
- ExtUtils::Liblist
- ExtUtils::MakeMaker
- ExtUtils::Manifest
- ExtUtils::Miniperl
- ExtUtils::Mkbootstrap
- ExtUtils::Mksymlists
- ExtUtils::MM
- ExtUtils::MM_Any
- ExtUtils::MM_BeOS
- ExtUtils::MM_DOS
- ExtUtils::MM_NW5
- ExtUtils::MM_OS2
- ExtUtils::MM_Unix
- ExtUtils::MM_UWIN
- ExtUtils::MM_VMS
- ExtUtils::MM_Win32
- ExtUtils::MY
- ExtUtils::Packlist
- ExtUtils::testlib
- Fatal
- Fcntl
- fields
- File::Basename
- File::CheckTree
- File::Compare
- File::Copy
- File::DosGlob
- File::Find
- File::Path
- File::Spec
- File::Spec::Cygwin
- File::Spec::Mac
- File::Spec::OS2
- File::Spec::Unix
- File::Spec::VMS
- File::Spec::Win32
- File::stat
- File::Temp
- FileCache
- FileHandle
- Filter::Simple
- Filter::Util::Call
- FindBin
- GDBM_File
- Getopt::Long
- Getopt::Std
- Hash::Util
- I18N::Collate
- I18N::Langinfo
- I18N::LangTags
- I18N::LangTags::List
- if
- integer
- IO
- IO::File
- IO::Handle
- IO::Pipe
- IO::Seekable
- IO::Select
- IO::Socket
- IPC::Msg
- IPC::Open2
- IPC::Open3
- IPC::Semaphore
- IPC::SysV
- less
- lib
- List::Util
- locale
- Math::BigFloat
- Math::BigInt
- Math::BigInt::Calc
- Math::BigRat
- Math::Complex
- Math::Trig
- MIME::Base64
- MIME::QuotedPrint
- NDBM_File
- Net::Cmd
- Net::Config
- Net::Domain
- Net::FTP
- Net::hostent
- Net::netent
- Net::Netrc
- Net::NNTP
- Net::Ping
- Net::POP3
- Net::protoent
- Net::servent
- Net::SMTP
- Net::Time
- O
- ODBM_File
- Opcode
- ops
- overload
- PerlIO
- PerlIO::Scalar
- PerlIO::Via
- Pod::Functions
- Pod::Html
- Pod::ParseLink
- Pod::Text
- POSIX
- re
- Safe
- Scalar::Util
- SDBM_File
- Search::Dict
- SelectSaver
- SelfLoader
- Shell
- sigtrap
- Socket
- sort
- Storable
- strict
- subs
- Switch
- Symbol
- Sys::Hostname
- Sys::Syslog
- Term::Cap
- Term::Complete
- Term::ReadLine
- Test
- Test::Builder
- Test::Harness
- Test::More
- Test::Simple
- Text::Abbrev
- Text::Balanced
- Text::ParseWords
- Text::Soundex
- Text::Tabs
- Text::Wrap
- Thread
- Thread::Queue
- Thread::Semaphore
- Thread::Signal
- Thread::Specific
- Tie::Array, Tie::StdArray
- Tie::File
- Tie::Handle
- Tie::Hash
- Tie::Memoize
- Tie::RefHash
- Tie::Scalar
- Tie::SubstrHash
- Time::gmtime
- Time::HiRes
- Time::Local
- Time::localtime
- Time::tm
- UNIVERSAL
- User::grent
- User::pwent
- utf8
- vars
- vmsish
- XS::Typemap
-
-
CGI
-
Chapter 9 CGI Overview
- A Typical CGI Interaction
- URL Encoding
- Extra Path Information
- CGI Environment Variables
-
Chapter 10 The CGI.pm Module
- HTML Tag Generation
- Importing Method Groups
- Maintaining State
- Named Parameters
- Using JavaScript Features
- Debugging
- CGI.pm Reference
-
Chapter 11 Web Server Programming with mod_perl
- Design of mod_perl
- Installing mod_perl
- mod_perl Handlers
- Running CGI Scripts with mod_perl
- Server-Side Includes with mod_perl
- <Perl> Sections
- Apache:: Modules
-
-
Databases
-
Chapter 12 Databases and Perl
- DBM Databases and DBM Hashes
- Design of DBI
- DBI Methods
- DBI Environment Variables
-
-
XML and SOAP
-
Chapter 13 XML and Perl
- XML Parsing and Validation
- XML::Parser Methods
- Expat Handlers
- XML::Parser Styles
- Expat Encodings
- XML::Parser::ContentModel Methods
-
Chapter 14 SOAP
- What Is SOAP?
- SOAP::Lite
- SOAP::Data
- SOAP::Serializer
- SOAP::Fault
-
-
Network Programming
-
Chapter 15 Sockets
- Built-in Socket Functions
- The IO::Socket Module
-
Chapter 16 Email Connectivity
- The Net Modules
- The Mail Modules
-
Chapter 17 Usenet News
- The NNTP Protocol
- Net::NNTP
- The News::Newsrc Module
-
Chapter 18 FTP
- The FTP Protocol
- Net::FTP
- FTP Configuration with Net::Netrc
-
Chapter 19 Lightweight Directory Access with Net::LDAP
- How Data Is Stored in LDAP
- Searching an LDAP Directory with Net::LDAP
- Adding an Entry to the Directory with Net::LDAP
- Net::LDAP Methods
-
-
LWP
-
Chapter 20 The LWP Library
- LWP Overview
- The LWP Modules
- The HTTP Modules
- The HTML Modules
- The URI Module
-
-
Perl/Tk
-
Chapter 21 Perl/Tk
- Widgets
- Geometry Managers
- Common Widget Configuration Options
- The Button Widget
- The Checkbutton Widget
- The Radiobutton Widget
- The Label Widget
- The Entry Widget
- The Scrollbar Widget
- The Listbox Widget
- The Text Widget
- The Canvas Widget
- The Scale Widget
- The Menubutton Widget
- The Menu Widget
- The Optionmenu Widget
- The Frame Widget
- The Toplevel Widget
-
-
Win32
-
Chapter 22 Win32 Modules and Extensions
- Win32::Clipboard
- Win32::Console
- Win32::ChangeNotify
- Win32::Eventlog
- Win32::File
- Win32::FileSecurity
- Win32::Internet
- Win32::IPC
- Win32::Mutex
- Win32::NetAdmin
- Win32::NetResource
- Win32::PerfLib
- Win32::Pipe
- Win32::Process
- Win32::Registry
- Win32::Semaphore
- Win32::Service
- Win32::Shortcut
- Win32 Extensions
-
Chapter 23 OLE Automation
- Creating Objects
- Automation Methods and Properties
- Win32::OLE::Enum
- Win32::OLE::Variant
- Win32::OLE::Const
-
Chapter 24 ODBC Extension for Win32
- ODBC Methods and Properties
-
-
Colophon
- Title:
- Perl in a Nutshell, Second Edition
- By:
- Nathan Patwardhan, Ellen Siever, Stephen Spainhour
- Publisher:
- O'Reilly Media
- Formats:
-
- Ebook
- Safari Books Online
- Print Release:
- June 2002
- Ebook Release:
- June 2009
- Pages:
- 768
- Print ISBN:
- 978-0-596-00241-1
- | ISBN 10:
- 0-596-00241-6
- Ebook ISBN:
- 978-0-596-10350-7
- | ISBN 10:
- 0-596-10350-6
Our look is the result of reader comments, our own experimentation, and feedback from distribution channels. Distinctive covers complement our distinctive approach to technical topics, breathing personality and life into potentially dry subjects. The animal on the cover of Perl in a Nutshell, Second Edition, is a camel (onehump dromedary). Camels are large ruminant mammals, weighing between 1,000 and 1,600 pounds and standing 6 to 7 feet tall at the shoulders. They are well known for their use as draft and saddle animals in the desert regions, especially of Africa and Asia. Camels can go for days without water. If food is scarce, they will eat anything, even their owner's tent. Camels live up to 50 years. Matt Hutchinson was the production editor and copyeditor for Perl in a Nutshell, Second Edition. Darren Kelly and Jeffrey Holcombprovided quality control. Seth Maislin and John Bickelhaupt wrote the index.
Edie Freedman designed the cover of this book. The cover image is a 19th-century engraving from the Dover Pictorial Archive. Emma Colby produced the cover layout with QuarkXPress 4.1 using Adobe's ITC Garamond font.
Melanie Wang designed the interior layout based on a series design by David Futato. Mike Sierra converted the files from XML to FrameMaker 5.5.6 using tools he created, as well as tools written in Perl by Erik Ray, Jason McIntosh, and Neil Walls. The text font is Linotype Birka; the heading font is Adobe Myriad Condensed; and the code font is LucasFont's TheSans Mono Condensed. The illustrations that appear in the book were produced by Robert Romano and Jessamyn Read using Macromedia FreeHand 9 and Adobe Photoshop 6. The tip and warning icons were drawn by Christopher Bing. This colophon was written by Michael Kalantarian.
