Стандартные модули
Стандартные модули
Ниже приведен перечень всех Perl-прагм и модулей, входящих в текущий дистрибутив языка (версия 5.004). Классификация модулей произвольная.
Таблица Б. 1. Общее программирование: разное
Модуль |
Функция |
autouse |
Задерживает загрузку модуля до его использования |
constant |
Создает константы периода компиляции |
Benchmark |
Проверяет и сравнивает временные параметры выполне |
ния кода |
|
Config |
Позволяет получить информацию о конфигурации Perl |
Env |
Импортирует переменные среды |
English |
Для пунктуационных переменных использует английские имена или имена на языке awk |
FindBin |
Находит путь к выполняемой в данный момент программе |
Getopt::Long |
Осуществляет расширенную обработку опций командной |
строки |
|
Getopt::Std |
Обрабатывает односимвольные ключи и осуществляет их |
кластеризацию |
|
lib |
Манипулирует массивом @INC во время компиляции |
Shell |
Запускает команды shell прозрачно для Perl |
strict |
Ограничивает использование небезопасных конструкций |
Symbol |
Генерирует анонимное развертывание (glob); уточняет |
имена переменных |
|
subs |
Предопределяет имена подпрограмм |
vars |
Предопределяет имена глобальных переменных |
Таблица Б. 2. Общее программирование: обработка ошибок и регистрация
Модуль |
Функция |
Сагр diagnostics sigtrap Sys::Syslog |
Выдает сообщения об ошибках Включает режим диагностики с выдачей предупреждений Разрешает обратное прослеживание стека для неожиданных сигналов Perl-интерфейс к UNIX-вызовам syslog(3) |
Таблица Б.З. Общее программирование: доступ к файлам и их обработка |
|
Модуль |
Функция |
Cwd DirHandle Fcnti File::Basename File::CheckTree File:: Copy File::Find File::Path FileCache FileHandle SelectSaver |
Получает путевое имя текущего рабочего каталога Выдает методы объектов для работы с дескрипторами каталогов Загружает С-определения Fcntl.h Разбирает спецификации файлов Выполняет всевозможные проверки для набора файлов Копирует файлы или дескрипторы файлов Обеспечивает просмотр дерева файлов Создает и удаляет ряд каталогов Позволяет одновременно открывать больше файлов, чем разрешает система Выдает методы объектов для работы с дескрипторами файлов Сохраняет и восстанавливает выбранный дескриптор файла |
Таблица Б. 4. Общее программирование: классы для операций ввода-вывода |
|
Модуль |
Функция |
10 IO::File IO::Handle IO::Pipe IO::Seekable IO::Select IO::Socket |
Интерфейс верхнего уровня к классам 10::* Методы объектов для работы с дескрипторами файлов Методы объектов для дескрипторов ввода-вывода Методы объектов для каналов Методы для объектов ввода-вывода на базе поиска Объектный интерфейс для выбора Объектный интерфейс для портов |
Таблица Б. 5. Общее программирование: обработка текста и экранные интерфейсы |
|
Модуль |
Функция |
locale Pod::HTML Pod::Text Search::Dict Term::Cap |
Использует локализацию POSIX для встроенных операций Конвертирует pod-данные в HTML Конвертирует pod-данные в форматированный ASCII-текст Ищет ключ в файле словаря Интерфейс termcap |
Модуль |
Функция |
Term::Complete Text::Abbrev Text::ParseWords Text::Soundex Text::Tabs Text::Wrap |
Модуль завершения слов Создает из списка таблицу сокращений Разбирает текст на лексемы и создает из них массив Реализует алгоритм Soundex, разработанный Кнутом Раскрывает и сворачивает знаки табуляции Выделяет текст в абзац |
Таблица Б. 6. Интерфейсы к базам данных |
|
Модуль |
Функция |
AnyDBMFile DBFile GDBMFile NDBMFile ODBMFile SDBM File |
Создает основу для множества DBM Доступ к Berkeley DB Связанный доступ к библиотеке GDBM Связанный доступ к файлам NDBM Связанный доступ к файлам ODBM Связанный доступ к файлам SDBM |
Таблица Б. 7. Математика |
|
Модуль |
Функция |
Integer Math::BigFloat Math::BigInt Math::Complex |
Выполняет арифметические операции в целочисленном формате, а не в формате с двойной точностью Пакет математических операций для чисел с плавающей запятой произвольной длины Пакет математических операций для целых чисел произвольной длины Пакет для комплексных чисел |
Таблица Б. 8. World Wide Web |
|
Модуль |
Функция |
CGI CGI::Apache CGI::Carp CGI::Fast CGI::Push CGI:: Switch |
Интерфейс Web-сервера (Common Gateway Interface) Поддержка Perl-модуля сервера Apache Ошибки сервера регистрации с полезной информацией Поддержка FastCGI (устойчивый серверный процесс) Поддержка "выталкивания" со стороны сервера Простой интерфейс для многих типов серверов |
Таблица Б. 9. Сети и межпроцессное взаимодействие |
||
Модуль |
Функция |
|
1РС::Ореп2 |
Открывает процесс для чтения и записи |
|
IPC::Open3 |
Открывает процесс для чтения, записи и обработки ошибок |
|
Net::Ping |
Проверяет, есть ли данный хост в сети |
|
Socket |
Загружает С-определения socket.h и манипуляторы структур |
|
Sys::Hostname |
Пытается получить хост-имя всеми возможными способами |
|
Таблица Б. 10. Автоматизированный доступ к Comprehensive Perl Archive Network |
||
Модуль |
Функция |
|
CPAN |
Простой интерфейс к CPAN |
|
CPAN::FirstTime |
Утилита для создания файла конфигурации CPAN |
|
CPAN::Nox |
Запускает CPAN, избегая компилированных расширений |
|
Таблица Б. 11. Время и локализация |
||
Модуль |
Функция |
|
Time:: Local |
Эффективно определяет местное и среднее гринвичское |
|
время |
||
I18N::Collate |
Сравнивает восьмибитовые скалярные данные |
|
Таблица Б. 12. Объектные интерфейсы к встроенным функциям |
||
Модуль |
Функция |
|
Class::Struct |
Объявляет struct-подобные типы данных как Perl-классы |
|
File::stat |
Объектный интерфейс к функции stat |
|
Net::hostent |
Объектный интерфейс к функциям gethost* |
|
Net::netent |
Объектный интерфейс к функциям getnet* |
|
Net::protoent |
Объектный интерфейс к функциям getproto* |
|
Net::servent |
Объектный интерфейс к функциям getserv* |
|
Time::gmtime |
Объектный интерфейс к функции gmtime |
|
Time::localtime |
Объектный интерфейс к функции localtime |
|
Time::tm |
Внутренний объект для Time::{gm,local}time |
|
User::grent |
Объектный интерфейс к функциям getgr* |
|
User::pwent |
Объектный интерфейс к функциям getpw* |
Таблица Б. 13. Для разработчиков: автозагрузка и динамическая загрузка |
|
Модуль |
Функция |
Autoloader |
Загружает функции только по требованию |
AutoSplit |
Разбивает пакет для автозагрузки |
Devel::SelfStubber |
Генерирует заглушки для модуля SelfLoading |
DynaLoader |
Автоматическая динамическая загрузка Perl-модулей |
SelfLoader |
Загружает функции только по требованию |
Таблица Б. 14. Для разработчиков: расширения языка и поддержка разработки платформ |
|
Модуль |
Функция |
blib |
Определяет структуру каталогов blib во время построения модулей |
ExtUtils::Embed |
Утилиты для встраивания Perl в С-программы |
ExtUtils::Install |
Инсталлирует файлы |
ExtUtils::Liblist |
Определяет библиотеки для использования и по |
рядок их использования |
|
ExtUtils:: MakeMaker |
Создает Makefile для расширения Perl |
ExtUtils: '.Manifest |
Утилиты для написания и проверки файла MANIFEST |
ExtUtils::Miniperl |
Создает С-код для perlmain.c |
ExtUtils: :Mkbootstrap |
Создает файл самозагрузки для использования модулем DynaLoader |
ExtUtils: :Mksymlists |
Пишет файлы опций компоновщика для динами |
ческого расширения |
|
ExtUtils: :MMOS2 |
Методы для отмены UNIX-режима в ExtUtils::MakeMaker |
ExtUtils: :MMUnix |
Методы, используемые модулем ExtUtils::MakeMaker |
ExtUtils::MMVMS |
Методы для отмены UNIX-режима в ExtUtils::MakeMaker |
ExtUtils: :testlib |
Исправляет @INC для использования только что |
созданного расширения |
|
Opcode |
Блокирует коды операций при компиляции Perl- |
кода |
|
ops |
Прагма для использования с модулем Opcode |
POSIX |
Интерфейс к стандарту IEEE 1003.1 |
Safe |
Создает защищенные пространства имен для оценки Perl-кода |
Test:: Harness |
Выполняет стандартные тестовые Perl-сценарии со сбором статистических данных |
vmsish |
Обеспечивает возможности, характерные для VMS |
Таблица Б. 15. Для разработчиков: поддержка объектно-ориентированного программирования |
|
Модуль |
Функция |
Exporter |
Стандартный метод импорта для модулей |
overload |
Перегружает математические операции Perl |
Tie::RefHash |
Базовый класс для связанных хешей со ссылками в |
качестве ключей |
|
Tie:: Hash |
Содержит определения базового класса для связанных хешей |
Tie:: Scalar |
Содержит определения базового класса для связанных |
скаляров |
|
Tie::StdHash |
Содержит определения базового класса для связанных хешей |
Tie::StdScalar |
Содержит определения базового класса для связанных |
скаляров |
|
Tie::SubstrHash |
Обеспечивает хеширование с фиксированным размером таблицы и фиксированной длиной ключей |
UNIVERSAL |
Базовый класс для всех классов |