Язык программирования perl что это

Perl — особенный язык программирования

Есть такой язык про­грам­ми­ро­ва­ния — Perl. Если вы заин­те­ре­со­ва­лись инфор­ма­ци­он­ны­ми тех­но­ло­ги­я­ми в эпо­ху Python и JavaScript, вы, веро­ят­но, даже не зна­е­те, что он суще­ству­ет — а он есть и его мно­го. Если пред­ста­вить, что наши ИТ-проекты — это кра­си­вые квар­ти­ры с евро­ре­мон­том, то Perl мож­но пред­ста­вить как ста­рые маги­страль­ные тру­бы, по кото­рым вода при­хо­дит в квартиру.

Ещё Perl назы­ва­ют «скот­чем для интер­не­та», пото­му что он может соеди­нять какие угод­но про­ек­ты, напи­сан­ные на любых языках:

Perl хоро­шо уме­ет запус­кать систем­ные коман­ды в опе­ра­ци­он­ной систе­ме. Бла­го­да­ря это­му Perl может взять резуль­тат рабо­ты одной про­грам­мы, пре­об­ра­зо­вать их как нуж­но и отдать в другую.

✅ Супер­си­ла Perl — в рабо­те с регу­ляр­ны­ми выра­же­ни­я­ми, пол­ная под­держ­ка кото­рых уже встро­е­на в язык. Perl может взять любые дан­ные, обра­бо­тать их по нуж­ным пра­ви­лам и очень быст­ро выдать резуль­тат в удоб­ном для поль­зо­ва­те­ля виде.

❌ Сла­бое место Perl — его слож­ность для нович­ков, если выбрать его сво­им пер­вым язы­ком для изу­че­ния. В нём всё не так про­сто с ООП, слиш­ком воль­ная трак­тов­ка опе­ра­то­ров срав­не­ния и огром­ные ком­би­на­ции спец­сим­во­лов, в кото­рых слож­но разо­брать­ся на стар­те. Поэто­му Perl луч­ше не выби­рать как пер­вый язык, а вер­нуть­ся к нему, когда воз­ник­нет прак­ти­че­ская необходимость.

Если у вас MacOS или Linux — у вас уже есть Perl

Интер­пре­та­тор Perl встро­ен почти во все UNIX-подобные опе­ра­ци­он­ные систе­мы, поэто­му его мож­но исполь­зо­вать в любой момент без уста­нов­ки. Един­ствен­ное, что нуж­но про­ве­рить — что в систем­ных настрой­ках пра­виль­но ука­зан путь к интерпретатору.

Если у вас Windows, то всё слож­нее — нуж­но будет исполь­зо­вать отдель­ный интер­пре­та­тор, напи­сан­ный спе­ци­аль­но для вашей вер­сии Windows. Допол­ни­тель­ный минус — так как это не род­ная сре­да для Perl, часть команд в таком режи­ме сов­ме­сти­мо­сти рабо­тать не будет.

Синтаксис

Син­так­сис Perl похож одно­вре­мен­но на два языка:

Пере­мен­ные. Начи­на­ют­ся со спе­ци­аль­ных символов:

$ — чис­ло, стро­ка или ссыл­ка на что-то

$thecode = «При­вет, это жур­нал Код!»

& — функ­ция (в Perl это тоже пере­мен­ная), кото­рая полу­ча­ет аргу­мен­ты и воз­вра­ща­ет значение

Услов­ный опе­ра­тор. Почти такой же как в C:

Ещё есть unless — то же самое, что ЕСЛИ, толь­ко наоборот:

# «выполняется, только если a не равно нулю»

Цик­лы. То же самое, как и везде:

# вывести строку ‘0 1 2 3 4’

Или мож­но сде­лать как в PHP:

# вывести строку ‘0 1 2 3 4’

Цик­лы с пред- и посту­сло­ви­ем. Если вы зна­е­те хотя бы Pascal, то вы зна­е­те и цик­лы на Perl:

Опе­ра­то­ры при­сва­и­ва­ния и мате­ма­ти­че­ские опе­ра­то­ры. В этом плане Perl очень похож на любой C-подобный язык и исполь­зу­ет те же самые команды:

Применение на практике

Perl — мощ­ный язык для рабо­ты с тек­стом и любы­ми сим­воль­ны­ми дан­ны­ми. На нём лег­ко писать про­грам­мы, кото­рые авто­ма­ти­зи­ру­ют рабо­ту с ком­пью­те­ром, выпол­ня­ют рутин­ные опе­ра­ции или пре­об­ра­зу­ют одни дан­ные в другие.

Напри­мер, эта команда

заме­нит все упо­ми­на­ния сло­ва Java на сло­во Perl в фай­ле resume.txt, и одно­вре­мен­но сде­ла­ет резерв­ную копию ори­ги­наль­но­го файла.

А эта — уда­ля­ет все повто­ря­ю­щи­е­ся эле­мен­ты массива:

my %cnt; # здесь будет число повторений элементов

Если нуж­но очи­стить файл от всех HTML-команд, мож­но исполь­зо­вать такой код:

# исходим из того, что мы уже получили содержимое HTML-файла и можем с ним работать

Иногда это всё-таки сложно

Ино­гда гото­вый код на Perl слож­но понять и про­чи­тать. Это из-за того, что Perl — очень гиб­кий язык про­грам­ми­ро­ва­ния с пол­ной под­держ­кой регу­ляр­ных выра­же­ний. Что­бы понять, что дела­ют неко­то­рые про­грам­мы и функ­ции, недо­ста­точ­но про­сто посмот­реть на них — нуж­но пони­мать пра­ви­ла пре­об­ра­зо­ва­ния регу­ляр­ных выра­же­ний и знать, как одни коман­ды в регу­ляр­ках вли­я­ют на другие.

Самый попу­ляр­ный при­мер тако­го кода:

❌❌❌ Не запус­кай­те этот код на сво­ём ком­пью­те­ре, мы предупредили.

Кажет­ся, что на экране долж­но появить­ся несколь­ко раз сло­во test, а даль­ше perl обра­ба­ты­ва­ет набор каких-то бес­смыс­лен­ных сим­во­лов. Но на самом деле после выпол­не­ния и обра­бот­ки всех регу­ляр­ных выра­же­ний этот код пре­вра­ща­ет­ся в такой:

❌❌❌ И этот код тоже не запус­кай­те — мож­но лег­ко сте­реть все свои дан­ные и повре­дить фай­ло­вую систему.

Не все про­грам­мы на Perl выгля­дят как эта, но без пони­ма­ния того, как рабо­та­ют регу­ляр­ные выра­же­ния, понять код быва­ет очень сложно.

Вывод: регу­ляр­ные выра­же­ния — это сила. Убе­ди­лись в этом в оче­ред­ной раз. Если ещё не убе­ди­лись — почи­тай­те, как с их помо­щью мож­но настро­ить авто­за­ме­ну нецен­зур­ной лек­си­ки на бла­го­при­стой­ные выра­же­ния.

Что пишут на Perl

Если корот­ко: всё, где нуж­но авто­ма­ти­зи­ро­вать рабо­ту ком­пью­те­ра или пре­об­ра­зо­ва­ние дан­ных, мож­но напи­сать на Perl.

Систем­ное про­грам­ми­ро­ва­ние. Сюда мож­но отне­сти рабо­ту с учёт­ны­ми запи­ся­ми поль­зо­ва­те­лей в сетях любой слож­но­сти и кон­фи­гу­ра­ции, адми­ни­стри­ро­ва­ние сетей и поль­зо­ва­те­лей в орга­ни­за­ции. Ещё Perl исполь­зу­ют для авто­ма­ти­за­ции рути­ны — нала­дить резерв­ное копи­ро­ва­ние по рас­пи­са­нию, отправ­ку писем с еже­днев­ны­ми отчё­та­ми, сбор, обра­бот­ку и ана­лиз раз­ных данных.

CGI-скрипты — любые скрип­ты для обме­на дан­ны­ми меж­ду сер­ве­ром и кли­ен­том. Для Perl неваж­но, в каком виде дан­ные выхо­дят и посту­па­ют обрат­но, — он пере­ве­дёт их в нуж­ный вид и отпра­вит из одно­го сер­ви­са в другой.

Объ­еди­не­ние сер­ви­сов или про­грамм. Если у вас есть две про­грам­мы, одна из кото­рых выда­ёт гото­вый резуль­тат в одном фор­ма­те, а дру­гой он тре­бу­ет­ся в дру­гом фор­ма­те, то Perl помо­жет вам их соеди­нить. Рабо­та­ет это так: вы пише­те скрипт, кото­рый запус­ка­ет первую про­грам­му, полу­ча­ет отту­да дан­ные, пре­об­ра­зу­ет их в нуж­ный вид и отправ­ля­ет во вто­рую про­грам­му. В ито­ге всё это рабо­та­ет как одно целое.

Востребован ли Perl сейчас

Perl вос­тре­бо­ван, пото­му что в мире нако­пи­лось мно­го ста­ро­го кода, кото­рый нуж­но под­дер­жи­вать. Дело в том, что про­грам­мы на Perl рабо­та­ют ста­биль­но, пред­ска­зу­е­мо и без сбо­ёв, а с 1987 года их напи­са­но очень много.

Но порог вхо­да в этот язык доволь­но высок — нуж­но обла­дать навы­ка­ми хотя бы на уровне мид­ла, что­бы быть вос­тре­бо­ван­ным специалистом.

С чего начать

Почи­тать: учеб­ник по Perl для нович­ков. Пере­вод ино­гда хро­ма­ет, но это луч­ший вари­ант для тех, кто толь­ко начи­на­ет изу­че­ние языка.

Посмот­реть: Perl Tutorial или Great Perl Tutorial For Begginers. Тут уже всё на англий­ском, зато более наглядно.

Бумаж­ная кни­га: Изу­ча­ем Perl Рэн­да­ла Швар­ца и Тома Феник­са. Для тех, кто любит осно­ва­тель­но подой­ти к про­цес­су и не любит читать с экрана.

Источник

Быстрый старт в Perl

Язык программирования perl что это. Смотреть фото Язык программирования perl что это. Смотреть картинку Язык программирования perl что это. Картинка про Язык программирования perl что это. Фото Язык программирования perl что это

Этот язык программирования богат возможностями по работе с текстом, что определяет основную область его применения — манипуляции с текстом, в частности парсинг.

В этой статье будут описаны шаги по установке среды исполнения Perl, выбору средств разработки и созданию первой программы. В конце этого руководства вы найдете список источников, которые помогут быстро освоить основы Perl, а также изучить язык более углубленно.

Perl — это единственный язык, программы на котором выглядят одинаково до и после RSA-шифрования.

На момент написания этого материала актуальной версией интерпретатора является 5.22.0. Perl 6 готовится к релизу в 2015 году, но еще недостаточно документирован.

Язык программирования Perl крайне не рекомендуется брать в качестве языка для знакомства с программированием. Если вы абсолютный новичок — лучше начните с чего-нибудь менее губительного для вашего неокрепшего сознания. Серьезно, вот что говорил об этом языке Йон Риббенс:

PHP — это маленькое зло, созданное некомпетентными новичками, в то время как Perl — это большое и коварное зло, созданное умелыми, но извращёнными профессионалами.

К слову сказать, с PHP начинать тоже не стоит. А теперь ближе к делу.

Среда исполнения

Интегрированная среда разработки (IDE)

Perl, к сожалению, не очень популярен среди разработчиков сред разработки, поэтому на выбор вам предоставлено лишь небольшое количество специализированных инструментов.

Padre, the Perl IDE

Мультиплатформенная легковесная среда разработки, созданная специально для Perl и удобная для новичков. Помимо традиционных подсветки синтаксиса и автодополнения, имеет также встроенные инструменты рефакторинга. Кстати, Padre сама написана на Perl 5.

Язык программирования perl что это. Смотреть фото Язык программирования perl что это. Смотреть картинку Язык программирования perl что это. Картинка про Язык программирования perl что это. Фото Язык программирования perl что это

Среда разработки, основанная на Eclipse. Подойдет для тех, кто собирается углубиться в Perl. Также поддерживается всеми основными платформами, однако обладает большим функционалом: в частности, поддерживает инспекцию переменных, навигацию по краткой документации и средства отладки (для последнего необходимо скачивать дополнительный модуль).

Язык программирования perl что это. Смотреть фото Язык программирования perl что это. Смотреть картинку Язык программирования perl что это. Картинка про Язык программирования perl что это. Фото Язык программирования perl что это

Инструкция по установке на официальном сайте. Перед установкой вам необходимо иметь на компьютере Eclipse (версии, не ниже 3.6), среду исполнения Java (JRE) и интерпретатор Perl (инструкции по его установке даны выше).

Об установке дополнительных плагинов для EPIC можно почитать здесь.

Текстовые редакторы

Как и в случае с любым языком программирования, конечно же, вам предоставляется огромное множество мультиплатформенных текстовых редакторов на выбор: от предустановленных блокнотов до более удобных средств редактирования исходного кода с подсветкой синтаксиса, автодополнением и т.п. В частности, обратите внимание на:

CodeGround

Кроме того, если вы хотите только попробовать программирование на Perl и не хотите устанавливать дополнительное программное обеспечение на свой компьютер, вы можете воспользоваться сервисом CodeGround, предоставляющим доступ к онлайн-средам разработки с базовым функционалом для большинства языков программирования, в число которых входит и Perl.

Первый «Привет, мир!» на Perl

Традиционно предлагаем начать знакомство с новым языком со всем хорошо известной программы:

Сохраните эту строку в файле hello.pl и запустите только что созданную вами программу командой:

Поздравляем, вы начали писать на Perl!

А дальше — в путь…

Отличное англоязычное руководство по языку программирования Perl для быстрого старта вы можете найти на сайте tutorialspoint.com. Помимо этого, существует официальный обучающий ресурс — learn.perl.org.

Среди русскоязычных руководств отметим перевод мультиязычного Учебника Perl. В нем переведены не все главы, однако в качестве основы ресурс вполне пригоден.

Если же вам не по душе изучение посредством чтения, вы можете посмотреть видео-уроки на YouTube в составе следующих плейлистов:

Если вам удастся найти хорошие видео-уроки по Perl на русском языке, обязательно напишите нам об этом в комментарии к этой статье или на почту chief@tproger.ru.

Естественно, вам не обойтись без официальной документации. Скачать оффлайн-версию в HTML и PDF формате можно на этой странице.

Среди книг для начала и продолжения обучения отметим:

Список рекомендуемых к прочтению книг вы можете найти также здесь.

Спасибо за внимание и успехов в изучении Perl!

Источник

Перл (язык программирования)

Перл (язык программирования)

Perl

5.10.0 / 18 декабря 2007

Основной особенностью языка считаются его богатые возможности для работы с текстом, в том числе реализованные при помощи регулярных выражений.

Perl также знаменит огромной коллекцией дополнительных модулей http://www.cpan.org (англ.)

Интересен текст на Perl, печатающий простые числа:

Еще один также впечатляющий своей краткостью пример, имеющий к тому же практическую пользу. Печатаются только уникальные строки файла file.

В этих примерах Perl напоминает своей краткостью и непонятностью с первого взгляда язык J.

Перл унаследовал много свойств от языков Си, shell script, awk.

Сегодня основной для разработчиков является пятая версия языка Perl, однако (на некоторых веб-серверах) продолжают использоваться программы (скрипты), написанные на предыдущей — четвёртой — версии (из-за частичной обратной несовместимости). Фактически стандарт языка определяется реализацией интерпретатора.

С 2000 года идет разработка новой (6-ой) версии языка. В отличие от предыдущих версий, разработчики планируют создать четко определенный стандарт языка. В настоящее время существуют экспериментальные компиляторы Perl 6, но продолжается дальнейшая дискуссия о новых правилах. На русском языке информация о новой версии языка доступна на сайте http://perl6.ru/.

Perl — далеко не единственный язык, дающий богатые возможности в обработке текста. Языки программирования РЕФАЛ, Icon и Снобол предоставляют возможность использовать более полно метод программирования «сопоставления с образцом», частным случаем которого и являются регулярные выражения.

Содержание

Синтаксис языка Perl

Синтаксис Perl имеет много общего с синтаксисом языков Си, Awk, shell.

Первая строка исходного кода может начинаться с «#!/Путь/к/Perl [-ключи]» — что указывает системе путь к интерпретатору Perl для выполнения программы в UNIX системах и выполнения их на веб-сервере.

Пример программы

Простейшая программа Hello world выглядит следующим образом:

А вот так можно напечатать число гугол.

Типы данных

Основные типы данных: скаляр, массив, хеш-таблица, функция, файловый дескриптор. Переменные разных типов отличаются знаком, который стоит перед именем переменной.

Физически Хеш-таблица представляет собой массив, где в нечетных позициях находятся ключи, а на четных — значения.

Константа представляет собой неизменяемое значение. Константа не является встроенным типом языка и эмулируется при помощи функций. Использование:

или непосредственная запись ссылки на скаляр в таблицу имен

Представляет собой указатель на файл, устройство или PIPE канал, открытые для записи, чтения или для записи и чтения

Регулярные выражения

В Perl встроена мощная поддержка регулярных выражений. Благодаря этому Perl очень эффективен для обработки текстов. Бо́льшая часть работы с регулярными выражениями производится при помощи операторов =

Семантика:
ПримерЗначение
$x =

ПримерЗначение
$x =

Поэзия в Perl

На Perl можно даже писать стихотворения. Одно из таких стихотворений под названием «Black Perl» («Чёрная жемчужина» или «Чёрный перл») было упомянуто Ларри Уоллом в первоапрельском письме в

Редакторы

См. также

Ссылки

Документация

Видео

Обучение

Сообщества

В России

На Украине

В Белоруссии

Литература

Смотреть что такое «Перл (язык программирования)» в других словарях:

Язык программирования Рубин — Ruby Семантика: мультипарадигмальный Тип исполнения: интерпретатор Появился в: 1995 г. Автор(ы): Юкихиро Мацумото Последняя версия: 1.9.1 … Википедия

Рубин (язык программирования) — Ruby Семантика: мультипарадигмальный Тип исполнения: интерпретатор Появился в: 1995 г. Автор(ы): Юкихиро Мацумото Последняя версия: 1.9.1 … Википедия

перл — из англ.: practical extract and report language язык программирования http://perl.org/​ комп. перл Перл из англ.: practical extract and report language язык программирования … Словарь сокращений и аббревиатур

Перл — многозначное слово Содержание 1 Топоним 2 Имя 3 Фамилия 4 Другое … Википедия

Хронология языков программирования — Списки языков программирования По категориям Хронологический Генеалогический Хронология языков программирования упорядоченный в хронологическом порядке список языков программирования. Содержание … Википедия

ДРАКОН (алгоритмический язык) — У этого термина существуют и другие значения, см. Дракон (значения). Пример блок схемы алгоритма на языке ДРАКОН дракон схемы ДРАКОН (Дружелюбный Русский Алгоритмический язык, Который Обеспечивает Наглядность) визуальный… … Википедия

Список языков программирования — Списки языков программирования Алфавитный По категориям Хронологический Генеалогический Цель этого алфавитного списка языков программирования состоит в том, чтобы дать полный перечень всех существующих языков программирования, как используемых в… … Википедия

Руби IDE — Ruby Семантика: мультипарадигмальный Тип исполнения: интерпретатор Появился в: 1995 г. Автор(ы): Юкихиро Мацумото Последняя версия: 1.9.1 … Википедия

Perl — Семантика: мультипарадигменный: императивный, объектно ориентированный, функциональный Тип исполнения: интерпретатор Появился в: 1987 Автор(ы) … Википедия

Вирт, Никлаус — Никлаус Вирт Niklaus E. Wirth … Википедия

Источник

Язык программирования perl что это

5.12.2 [1] / 7 сентября 2010

5.13.4 [2] / 20 августа 2010

Perl — высокоуровневый интерпретируемый динамический язык программированияобщего назначения, созданныйЛарри Уоллом, лингвистом по образованию. Название языка представляет собой аббревиатуру, которая расшифровывается какPractical Extraction and Report Language «практический язык для извлечения данных и составления отчётов». Первоначально аббревиатура состояла из пяти символов и в таком виде в точности совпадала с английским словомpearl, жемчужина. Но затем стало известно, что такой язык существует (см. PEARL) и букву «а» убрали. Талисманом языка Perl являетсяверблюд— не слишком красивое, но очень выносливоеживотное, способное выполнять тяжёлую работу.

Основной особенностью языка считаются его богатые возможности для работы с текстом, в том числе реализованные при помощи регулярных выражений. Перл унаследовал много свойств от языковСи, shell script, awk.

Perl также знаменит огромной коллекциейдополнительных модулейCPAN, находящейся по адресу http://www.cpan.org(англ.).

Содержание

История [ править | править код ]

Первые версии [ править | править код ]

Perl 2 был выпущен в 1988 году, основным нововведением в котором был переработаный механизм регулярных выражений. Perl 3, выпущенный в 1989 получил возможность обрабатывать потоки двоичных данных.

Изначально, единственной документацией для Perl была единственная (огромной длины) man-страница. В 1991 году была выпущена к книга Programming Perl (известная многими программистами как «Верблюжая книга» (Шаблон:Lang-en) из-за изображения на обложке), которая, де-факто, стала стандартом языка. В тоже самое время, версия языка была поднята до 4, не столько, чтобы указать на значительные изменения, сколько, чтобы обозначить, что эта версия языка документирована книгой.

Ранний Perl 5 [ править | править код ]

Perl 4 прошёл через серию релизов, остановившись на Perl 4.036 в 1993 году. В этот момент, Ларри Уолл забросил Perl 4 и начал работу над Perl 5. Разработка Perl 5 была начата в 1994 году. В тоже время был создан список рассылки perl5-porters для координации работы над портированием Perl 5 на различные платформы. Он до сих пор остаётся основным форумом по разработке, обслуживанию и портированию Perl 5. [3]

Perl 5.000 был выпущен 17 октября 1994 года. [4] Он включал в себя полностью переписанный интерпретатор, и включал в себя много новых языковых возможностей, таких как объекты, ссылки, локальные (my) переменные, и модули. Особенно важной частью были модули, так как они предоставили механизм расширения языка без модифицирования интерпретатора. Это позволило стабилизировать интерпретатор, но при этом, дало возможность обычным Perl-программистам добавлять в язык новые возможности. Perl 5 находится в активной разработке по сей день.

Perl 5.001 был выпущен 13 марта 1995 года. Perl 5.002 увидел свет 29 февраля 1996 года с новой поддержкой прототипов. Это позволило авторам модулей создавать функции, которые вели себя так же, как и встроенные функции Perl. Версия Perl 5.003 появилась 25 июня 1996 и устраняла обнаружившиеся проблемы с безопасностью.

Одно из важнейших событий в истории Perl 5 случилось за пределами собственно языка и было последствием поддержки модулей. 26 октября 1995 года начала свою работу CPAN (Всеобъемлющая Сеть Архивов Перл), которая стала репозиторием модулей Perl, а также исходного кода самого языка. На данный момент сеть насчитывает более 20000 модулей, созданных более чем 8000 программистами. [5]

Perl 5.004 был выпущен 15 мая 1997 года и содержал, кроме всего прочего, пакет UNIVERSAL, который давал языку основной объект, от которого автоматически происходили все классы. Была также включена возможность запрашивать версию модулей. В дополнении к этому Perl стал поддерживать Microsoft Windows, а также ряд других операционных систем. [6]

Perl 5.005 увидел свет 22 июня 1998 года. Этот релиз включал в себя несколько улучшений процессора регулярных выражений, новые перехваты в бэкенд с помощью B::* модулей, qr// оператор кавычек для регулярных выражений, большой выбор других новых модулей, а также поддержку ряда операционных систем, в частности BeOs. [7]

C 2000 по наше время [ править | править код ]

Perl 5.6 был выпущен 22 марта 2000 года. Главные изменения включали поддержку 64-битных систем, представление строк в стандарте юникод, поддержку больших файлов (файлы больше 2 Гб) и ключевое слово «our». [8] [9] Во время разработки Perl 5.6 было принято решение изменить схему наименования версий на более близкую к другим проектам с открытым исходным кодом. За версией 5.005_63 следовала версия 5.5.640, согласно плану версиям в разработке должны были присваиватся нечётные номера, стабильным версиям — чётные.

В 2000 году Ларри Уолл выступил с призывом к сообществу активно обсуждать предложения к следующей версии Perl. Результатом этого обсуждения стал 361 документ RFC (Запрос комментариев), которые были использованы в разработке Perl 6. В 2001 году [10] была начата работа над финальным документом, подводящим итог предложениям к созданию нового поколения Perl. Результат был представлен не в виде формального документа, а в качестве дайджеста всех RFC. К этому времени Perl 6 существовал исключительно в виде описания языка.

Perl 5.8 был впервые выпущен 18 июля 2002 года и с этого момента получал ежегодное обновление. Последняя версия Perl 5.8 — 5.8.9 увидела свет 14 декабря 2008 года. Perl 5.8 улучшал поддержку юникода, добавлял новую реализацию ввода/вывода, добавлял поддержку многопоточности, увеличивал числовую точность и добавлял несколько новых модулей. [11]

18 декабря 2007 года, в день 20-летней годовщины Perl 1.0, была выпущена версия Perl 5.10.0. Эта версия содержала в себе ряд заметных нововведений, приближающих её к Perl 6. Одними из таких нововведений стали новые операторы switch (названных «given»/«when»), обновление регулярных выражений, а также «умный» оператор совпадения «

Значительное изменение процесса разработки Perl 5 произошло после появления Perl 5.11. Сообщество разработчиков перешло на ежемесячный цикл релизов, с планированием даты релиза на три месяца вперёд.

12 апреля 2010 года Perl 5.12.0 был представлен публике. Выдающиеся нововведения включают в себя поддержку нового синтаксиса package NAME VERSION, оператор Yada Yada (служащего для маркировки кода-заполнителя, который ещё не реализован), полное решение Пробемы 2038 года (Y2038), перегрузка операторов регулярных выражений, поддержку DTrace (фреймворка динамической трассировки), а также полную поддержку стандарта Unicode 5.2. [17] 7 сентября 2010 года Perl 5.12.2 был выпущен. Этот релиз содержит обновление модулей, а также некоторые изменения в документации. [18]

Последняя версия, выпущенная 20 августа 2010 года — Perl 5.13.4. [19]

Perl 6 [ править | править код ]

Шаблон:Основная статья С 2000 года идет разработка новой (6-ой) версии языка. В отличие от предыдущих версий, разработчики планируют создать четко определенный стандарт языка. В настоящее время существуют экспериментальные компиляторы Perl 6, но продолжается дальнейшая дискуссия о новых правилах. На русском языке информация о новой версии языка доступна на сайте http://perl6.ru/.

Обзор [ править | править код ]

Perl — язык программирования общего назначения, который был первоначально создан для манипуляций с текстом, но на данный момент используется для выполнения широкого спектра задач, включая системное администрирование, веб-разработку, сетевое программирование, игры, биоинформатику, разработку графических пользовательских интерфейсов.

Язык можно охарактеризовать скорее как практичный (лёгкость в использовании, эффективность, полнота), чем красивый (элегантность, минималистичность). [20] Главными достоинствами языка являются поддержка различных парадигм (процедурный, объектно-ориентированный и функциональный стили программирования), контроль за памятью (без коллектора мусора, основанного на циклах), встроенная поддержка обработки текста, а также большая коллекция модулей сторонних разработчиков.

Согласно Ларри Уоллу, у Perl есть два девиза. Первый — «Есть больше одного способа это сделать» («There’s more than one way to do it»), известный также под аббревиатурой TMTOWTDI. Второй слоган — «Простые вещи должны оставаться простыми, а сложные стать выполнимыми» («Easy things should be easy and hard things should be possible»).

Особенности [ править | править код ]

Общая структура Perl в общих чертах ведёт своё начало от языка Си. Perl — процедуральный по своей природе, имеет переменные, выражения, присваивания, блоки кода, отделяемые фигурными скобками, управляющие структуры и функции.

Perl также заимствует ряд свойств из языков программирования оболочки операционной системы. Все переменные маркируются ведущими знаками, которые точно выражают тип данных переменной в этом контексте (например, скаляр, массив, хеш). Важно, что эти знаки позволяют переменным быть интерполированным в строках. Perl обладает множеством встроенных функций, которые обеспечивают инструментарий, часто используемый для программирования оболочки, например сортировку или вызов системных служб.

Perl заимствует массивы из Lisp, регулярные выражения из AWK и sed, из AWK также позаимствованы хеши («ассоциативные массивы»). Регулярные выражения облегчают выполнение многих задач по парсингу, обработке текста и манипуляций с данными.

Perl 5 добавил поддержку сложных типов данных, первоклассных функций (замыкание как значение) и объектную модель. В последнюю входят ссылки, пакеты, выполнение методов от класса, переменные с лексическим объявлением области видимости, а также директивы компилятору (нампример, strict ). Главнейшим усовершенствованием представленным в Perl 5 стала возможность помещать код в «пакеты» (package) в качестве модулей для повторного использования. Ларри Уолл позже заметил, что «Весь замысел модульной системы Perl 5 сводился к поощрению роста культуры Perl, а не строчек кода». [21]

Все версии Perl выполняют автоматическую типизацию данных и автоматический контроль над памятью. Интерпретатор знает тип и запросы памяти каждого объекта программы, он распределяет и освобождает память, производя подсчёт ссылок. Перевод одного типа данных в другой — например, числа в строку — происходит автоматически в рантайме, невозможные для выполнения переводы типов данных приводят к фатальной ошибке.

Синтаксис языка Perl [ править | править код ]

Синтаксис Perl имеет много общего с синтаксисом языков Си, Awk, sed и shell.

Первая строка исходного кода может начинаться с «#!/Путь/к/Perl [-ключи]» — что указывает системе путь к интерпретатору Perl для выполнения программы в UNIX системах и выполнения их на веб-сервере. Изначально обработка такой строки — это функция shell, но Perl при выполнении программы также проверяет эту строку и читает из неё ключи, игнорируя путь к интерпретатору.

Пример программы [ править | править код ]

Простейшая программа Hello world выглядит следующим образом:

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *