FANDOM


Perl (Пърл)
Файл:Republic of perl.gif
Парадигма: функционален, обектно-ориентиран, процедурен
Излиза през: 1987
Разработен от: Лари Уол
Система типове: динамична
Главни реализации:
Диалекти:
Повлиян от: AWK, BASIC-PLUS, C, C++, Lisp, Pascal, Python, Sed, Unix shell
Повлиял: Python, PHP, Ruby
Сайт: www.perl.org

Perl (произнася се „пърл“) е универсален, интерпретиран език за програмиране, създаден от Лари Уол през 1987 г. Лари е трябвало да създава отчети за системата, която е поддържал тогава и не е имало подходящ инструмент в момента (програмата awk не е можела да отваря и затваря файлове въз основа на информацията в тях), а не му се е искало да създава специализиран инструмент. Така на бял свят се е появил нов език.



Име Редактиране

Първоначално името на езика е било Pearl (произнася се по същия начин — „пърл“). Още преди да излезе първата версия на езика, Лари установява, че съществува език за програмиране на име PEARL. С цел да се избегнат конфликти, а и повлиян от характерната за философията на Юникс тенденция към кратки имена, Лари променя името на езика на Perl, без да променя произношението му.


В последствие се появяват интерпретации на името като съкращение, най-популярната от които е Practical Extraction and Report Language (в превод: практичен език за извличане и отчети). Съществуват и много други интерпретации, включително и такива от самия Лари Уол, например шеговитото Pathologically Eclectic Rubbish Lister (в превод: патологично многостранен изброител на глупости). Всички те обаче са бекроними. Името на езика не е съкращение от нищо, поради което се пише само с една главна буква — Perl, а не PERL (за разлика от споменатия език PEARL, чието име наистина е съкращение).


Съществува също така тънка разлика в значението в зависимост от това дали името е изписано с главна буква в началото или изцяло с малки букви. Perl е името на езика за програмиране, което, както (почти) всяко друго име, се пише с главна буква. Под perl се има предвид интерпретатора на Пърл, т.е. програмата, която се стартира, за да се изпълни даден код на Пърл. Името на интерпретатора спазва неписаното правило имената на команди под Юникс да са изцяло с малки букви.



Свойства на Пърл Редактиране

В Пърл са заимствани концепции от доста езици — C, awk, Python, Lisp и др. Най-силните му черти са регулярните изрази (англ. regular expression, често съкращавано на regex), вградените сложни структури от данни (обикновени и асоциативни масиви) и един от най-големите в света набори от свободно достъпни модули CPAN. На Пърл може да се пише процедурно, обектно-ориентирано и функционално (поддържа обвивки, една от най-мощните абстракции в компютърната наука). Пърл е слабо типизиран език. Той е интерпретиран, като програмата първо се компилира до машиннонезависими инструкции (байткод), които се изпълняват от интерпретатора. За разлика от Java обаче, байткодът не е лесно достъпен, благодарение на което са избегнати редица проблеми с обратната съвместимост. Интерпретаторът на Пърл e написан на C и е преносим на огромен брой платформи и операционни системи. Програмата perl2exe и модулът pp могат да бъдат използвани за произвеждане (генериране) на изпълними програми от скриптове на Пърл.


Предимства на езика Редактиране

Обработка на текст Редактиране

Най-силната страна на Пърл е обработката на текст. Това го прави изключително популярен сред системните администратори. Операции като отваряне, четене, синтактичен разбор (известен още като „парсване“), търсене, заместване на текстови файлове са кратки и лесни за програмиране, имплементирани са много ефективно и се изпълняват по-бързо отколкото в повечето други езици.


Динамични уеб страници Редактиране

Разработчиците на динамични уеб страници (страниците, чиито съдържание се произвежда на момента на тяхното извикване — т. е. динамично) често използват Пърл поради големия брой безплатни скриптове, както и общността на разработчици предлагащи помощ на своите колеги. Богатата библиотека с модули, споменатата мощна текстообработка, която често се налага при генерирането на HTML страници, както и фактът, че е слабо типизиран и интерпретиран език, правят възможна бързата разработка на приложения в много области, включително и настолни графични приложения.


Фактът, че Пърл се интерпретира в момента на изпълнение, налага уеб сървърът да стартира на интерпретатора perl за всяка уеб страница, която трябва да се генерира. При по-натоварени сайтове това може да доведе до значително натоварване на системата, както откъм памет, така и откъм процесорно време. За да се избегне това, специално за Пърл е създаден модула mod_perl за сървъра Apache, който на практика представлява интерпретатор за Пърл, вграден в кода на Apache. Това позволява на уеб сървъра да изпълнява код на Пърл, без да се налага да стартира нов процес за всяка заявена уеб страница. Това води до значително увеличение на производителността при намалени ресурси. Mod_perl отива дори още по-надалеч и дава на скриптовете на Пърл достъп до всички „вътрешности“ на самия Apache сървър, като им позволява да се намесват във всеки един етап от доставянето на HTTP страницата, както и да използват конструкции на Пърл в конфигурационните файлове на Apache.


Общността CPAN Редактиране

Разработчиците на Пърл създават програмни модули, разрешаващи разнообразни проблеми за почти всички операционни системи и дори програмни езици. Тези модули обикновено са достъпни за използване под същия лиценз, както и самия Пърл (Artistic License), което допринася за по-нататъшното разрастване на общността.


Недостатъци на езика Редактиране

Противниците на Пърл твърдят, че той има много неясен и дори откровено грозен синтаксис. Редицата синтактични съкращения, целящи пестене на време при писане на код, водят до безкраен брой от сложни за запомняне символи и структури. Мотото на езика „Има повече от един начин да го направиш“ се счита за основата на хаос от течения и секти, които елиминират логичността и догматичността, които би трябвало да определят развитието на един програмен език. Комбинирано със слабата типизация (която по принцип е една от силните страни на Пърл), всичко това позволява да се пише код, който е по-късно е неразбираем дори за самия автор. Поради това някои наричат Пърл език „само за писане“ (англ. write-only).


Един от начините да се избегне това, е да се спазва някакъв основен набор от правила и конвенции при писането на код, които да са общоприети от всички. Фактът, че Пърл до голяма степен не налага такива правила, обаче води до възникването на много стилови „течения“ сред програмистите на Пърл, като за хората следващи даден стил е трудно да разберат код, писан в друг стил.


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

Документацията на Пърл изобилства от шеги и игри на думи, за разлика от сухия език на повечето компютърна литература, а годишните обръщения на Лари („State of the Onion“, каламбур с обръщението на президента на САЩ, „State of the Union“) са ненадминати образци на духовитост.


Литература Редактиране

Най-популярната книга за Пърл е написана от автора му и е известна сред адептите на езика като „камилата“ заради картинката на обложката си.


Външни препратки Редактиране

  • CPAN (Comprehensive Perl Archive Network, огромен архив с модули за Пърл)


Ad blocker interference detected!


Wikia is a free-to-use site that makes money from advertising. We have a modified experience for viewers using ad blockers

Wikia is not accessible if you’ve made further modifications. Remove the custom ad blocker rule(s) and the page will load as expected.