Это команда perlfaq1, которую можно запустить в бесплатном хостинг-провайдере OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.
ПРОГРАММА:
ИМЯ
perlfaq1 - Общие вопросы о Perl
Версия
версия 5.021009
ОПИСАНИЕ
В этом разделе часто задаваемых вопросов даются ответы на очень общие и высокоуровневые вопросы о Perl.
Что is Perl?
Perl - это язык программирования высокого уровня с эклектичным наследием, написанный Ларри Уоллом.
и бросок тысяч.
Возможности Perl для обработки процессов, файлов и текста делают его особенно подходящим.
для задач, связанных с быстрым прототипированием, системными утилитами, программными инструментами, управлением системой
задачи, доступ к базе данных, графическое программирование, работа в сети и веб-программирование.
Perl происходит от широко распространенного языка программирования C и, в меньшей степени, от sed,
awk, оболочка Unix и многие другие инструменты и языки.
Эти сильные стороны делают его особенно популярным среди веб-разработчиков и системных администраторов.
Математики, генетики, журналисты, менеджеры и многие другие люди также используют Perl.
С кем поддерживает Perl? С кем развивается Это? почему is it свободно?
Оригинальная культура до-популистского Интернета и глубоко укоренившиеся убеждения Перла
Автор, Ларри Уолл, положил начало политике свободного и открытого распространения Perl. Perl - это
поддерживается своими пользователями. Ядро, стандартная библиотека Perl, дополнительные модули и
документация, которую вы сейчас читаете, была написана добровольцами.
Основная команда разработчиков (известная как Perl Porters) - это группа очень альтруистических
люди, стремящиеся производить лучшее программное обеспечение бесплатно, чем вы могли надеяться
покупка за деньги. Вы можете следить за незавершенными разработками в архивах.
<http://www.nntp.perl.org/group/perl.perl5.porters/> или прочтите часто задаваемые вопросы
<http://dev.perl.org/perl5/docs/p5p-faq.html>, или вы можете подписаться на список рассылки по
отправка [электронная почта защищена] запрос на подписку (пустое сообщение без
сабж в порядке).
Хотя проект GNU включает Perl в свои дистрибутивы, нет такого понятия, как «GNU
Perl ". Perl не производится и не поддерживается Free Software Foundation. Perl's
условия лицензирования также более открыты, чем обычно бывает у программного обеспечения GNU.
Вы можете получить коммерческую поддержку Perl, если хотите, хотя для большинства пользователей неофициальная
поддержки будет более чем достаточно. См. Ответ на вопрос «Где я могу купить коммерческую версию
Perl? "Для получения дополнительной информации.
Который версия of Perl должен I использовать?
(предоставлено brian d foy)
Часто возникает вопрос мнения и вкуса, и нет ни одного подходящего ответа.
все. В общем, вы хотите использовать либо текущий стабильный выпуск, либо стабильный
выпуск непосредственно перед этим. В настоящее время это perl5.18.x и perl5.16.x,
соответственно.
Помимо этого, вы должны рассмотреть несколько вещей и решить, что лучше для вас.
· Если что-то не сломалось, обновление Perl может сломать их (или, по крайней мере, выпустить новые
предупреждения).
· В последних версиях Perl исправлено больше ошибок.
· Сообщество Perl ориентировано на поддержку самых последних выпусков, поэтому вы
им будет легче найти помощь.
· Версии до perl5.004 имели серьезные проблемы с безопасностью, связанные с переполнением буфера, и
в некоторых случаях есть рекомендации CERT (например,
<http://www.cert.org/advisories/CA-1997-17.html>).
· Последние версии, вероятно, наименее развернуты и широко протестированы, поэтому вы можете захотеть
подождать несколько месяцев после их выпуска и посмотреть, какие проблемы есть у других, если вы
склонность к риску.
· Непосредственные, предыдущие выпуски (например, perl5.14.x) обычно поддерживаются для
пока, хотя и не на том же уровне, что и текущие выпуски.
· Никто активно не поддерживает Perl 4. Десять лет назад это была туша мертвого верблюда.
(согласно этому документу). Теперь это едва ли скелет, как у его побеленных костей.
сломаны или размыты.
· Текущая ведущая реализация Perl 6, Rakudo, выпустила "полезный, удобный,
Распространение Perl 6 (называемого Rakudo Star) «ранним последователем» в июле 2010 года.
видетьhttp://rakudo.org/> для получения дополнительной информации.
· На самом деле существует два пути разработки Perl: поддерживающая версия и
экспериментальная версия. Поддерживаемые версии стабильны и имеют четное число, как
второстепенный выпуск (например, perl5.18.x, где 18 - второстепенный выпуск). Экспериментальный
версии могут включать функции, которых нет в стабильных версиях, и иметь
нечетное число как второстепенный выпуск (т.е. perl5.19.x, где 19 - второстепенный выпуск).
Что Perl 4, Perl 5, or Perl 6?
Короче говоря, Perl 4 является родительским для Perl 5 и Perl 6. Perl 5 является старшим братом, и
хотя это разные языки, тот, кто знает один из них, заметит много общего в
другой.
Цифра после Perl (т.е. 5 после Perl 5) является основным выпуском Perl.
переводчик, а также версию языка. Каждая основная версия имеет значительную
различия, которые не поддерживаются более ранними версиями.
Текущий основной выпуск Perl - Perl 5, впервые выпущенный в 1994 году. Он может запускать сценарии.
от предыдущего основного выпуска Perl 4 (март 1991 г.), но имеет существенные отличия.
Perl 6 - это новое изобретение Perl, это язык того же происхождения, но несовместимый.
Эти два понятия дополняют друг друга, а не исключают друг друга. Perl 6 не предназначен для замены Perl 5,
наоборот. См. «Что такое Perl 6?» ниже, чтобы узнать больше.
Смотрите в perlhist историю изменений Perl.
Что is Perl 6?
Perl 6 был первоначально описывается как переписывание сообществом Perl 5. Разработка началась
в 2002; синтаксические и дизайнерские работы продолжаются по сей день. По мере развития языка он
становится ясно, что это отдельный язык, несовместимый с Perl 5, но в том же
языковая семья.
Вопреки распространенному мнению, Perl 6 и Perl 5 мирно сосуществуют друг с другом. Perl 6
оказался прекрасным источником идей для тех, кто использует Perl 5 (объект Moose
система - известный пример). Есть совпадения в сообществах, и это совпадение
поддерживает традицию обмена и заимствования, которые сыграли важную роль в Perl
успех. В настоящее время ведущей реализацией Perl 6 является Rakudo, и вы можете узнать больше
об этом вhttp://rakudo.org>.
Если вы хотите узнать больше о Perl 6 или хотите помочь в крестовом походе, сделайте
Perl - лучшее место, чем прочтите страницу разработчиков Perl 6 по адресуhttp://www.perl6.org/> и
увлекаться.
«Мы действительно серьезно относимся к тому, чтобы заново изобретать все, что нужно изобретать заново». --Ларри Уолл
Как стабильный is Perl?
Производственные выпуски, которые включают исправления ошибок и новые функции, широко тестируются.
перед выпуском. Начиная с выпуска 5.000 у нас в среднем было около одного производственного выпуска на
год.
Команда разработчиков Perl время от времени вносит изменения во внутреннее ядро языка,
но все возможные усилия прилагаются к обратной совместимости.
Как . новый версии of Perl вышел?
В последнее время планировалось выпускать новую версию Perl примерно каждый апрель, но
правильно подготовить релиз важнее, чем строго придерживаться календарной даты, поэтому
дата выпуска несколько гибкая. Исторические даты выпуска можно посмотреть на
<http://www.cpan.org/src/README.html>.
Второстепенные версии с четными номерами (5.14, 5.16, 5.18) являются производственными версиями, а с нечетными номерами.
второстепенные версии (5.15, 5.17, 5.19) являются версиями для разработки. Если вы не хотите попробовать
экспериментальная функция, вы, вероятно, никогда не захотите устанавливать разрабатываемую версию Perl.
Команда разработчиков Perl называется Perl 5 Porters, и описывается их организация.
вhttp://perldoc.perl.org/perlpolicy.html>. Организационные правила действительно просто кипят
вплоть до одного: Ларри всегда прав, даже когда ошибался.
Is Perl затрудняет в учиться?
Нет, Perl легко начать изучатьhttp://learn.perl.org/> - и легко продолжать учиться.
Похоже, что у вас есть опыт работы с большинством языков программирования, поэтому, если
вы когда-либо писали программу C, сценарий awk, сценарий оболочки или даже программу BASIC,
вы уже на полпути.
Для большинства задач требуется лишь небольшое подмножество языка Perl. Один из основных девизов
Разработка Perl - это «есть несколько способов сделать это» (TMTOWTDI, иногда произносится
"тим подхалим"). Таким образом, кривая обучения Perl неглубокая (легко учиться) и долгая (есть
вы можете сделать очень много, если очень захотите).
Наконец, поскольку Perl часто (но не всегда и, конечно, не по определению) является
интерпретируемый язык, вы можете писать свои программы и тестировать их без промежуточных
этап компиляции, позволяющий быстро и легко экспериментировать и тестировать / отлаживать. Эта легкость
экспериментирования еще больше сглаживает кривую обучения.
Вещи, которые облегчают изучение Perl: опыт работы с Unix, практически любое программирование
опыт, понимание регулярных выражений и способность понимать другие
код народа. Если вам нужно что-то сделать, то это, вероятно, уже сделано,
а рабочий пример обычно доступен бесплатно. Не забывайте также о модулях Perl.
Они обсуждаются в части 3 этого FAQ вместе с CPAN.http://www.cpan.org/>, что является
обсуждается в Части 2.
Как приносит Perl сравнить другими языки " У аборигенов Джава, Python, РЕКС, Схема, or Ткл?
Perl можно использовать практически для любых задач кодирования, даже тех, которые требуют интеграции
специальный код C для дополнительной скорости. Как и любой другой инструмент, его можно использовать хорошо или плохо. Perl имеет
много сильных и слабых сторон, и какие именно области являются хорошими и плохими, часто
личный выбор.
При выборе языка на вас также должны влиять ресурсы.
<http://www.cpan.org/>, культура тестированияhttp://www.cpantesters.org/> и сообщество
<http://www.perl.org/community.html> который его окружает.
Для сравнения с конкретным языком часто лучше создать небольшой проект на обоих языках.
языков и сравните результаты, обязательно используйте все ресурсы
<http://www.cpan.org/> каждого языка, поскольку язык - это гораздо больше, чем просто его синтаксис.
Может I do [задача] in Perl?
Perl достаточно гибкий и расширяемый, чтобы вы могли использовать его практически для любой задачи, начиная с одной строки.
от задач обработки файлов до больших сложных систем.
Для многих Perl служит отличной заменой сценариям оболочки. Для других это
служит удобной заменой высокого уровня для большей части того, что они программируют на низком уровне.
языки уровня, такие как C или C ++. В конечном итоге это зависит от вас (и, возможно, вашего руководства)
для каких задач вы будете использовать Perl, а для каких - нет.
Если у вас есть библиотека, предоставляющая API, вы можете сделать любой ее компонент доступным как
просто еще одна функция или переменная Perl, использующая расширение Perl, написанное на C или C ++, и
динамически связан с вашим основным интерпретатором Perl. Вы также можете пойти в другом направлении,
и напишите свою основную программу на C или C ++, а затем подключите некоторый код Perl на лету, чтобы
создать мощное приложение. См. Perlembed.
Тем не менее, всегда будут небольшие специализированные языки специального назначения, посвященные
конкретная проблемная область, которая просто более удобна для определенных типов проблем.
Perl старается быть всем для всех, но никому ничего особенного. Примеры
специализированные языки, которые приходят на ум, включают пролог и matlab.
После появления не должны I программа in Perl?
Одна веская причина - это когда у вас уже есть существующее приложение, написанное на другом
язык, который все сделано (и сделано хорошо), или у вас есть язык приложения специально
предназначен для определенной задачи (например, пролог, make).
Если вы обнаружите, что вам нужно ускорить определенную часть приложения Perl (а не что-то
вам часто нужно) вы можете захотеть использовать C, но вы можете получить доступ к нему из вашего кода Perl с
проблемы.
какой разница между "перл" и "Perl"?
«Perl» - это название языка. Только буква "P" пишется с заглавной буквы. Имя
Интерпретатор (программа, запускающая сценарий Perl) - это "perl" с строчной буквой "p".
Вы можете выбрать или не следовать этому использованию. Но никогда не пишите "PERL", потому что perl
не аббревиатура.
Что is a ДЖАФ?
(предоставлено brian d foy)
JAPH означает «Еще один хакер Perl», который Рэндал Шварц использовал для подписи электронной почты и
сообщения usenet, начиная с конца 1980-х годов. Ранее он использовал эту фразу со многими
субъектов ("Просто еще один хакер"), поэтому, чтобы отличить свой JAPH, он начал писать их
как программы Perl:
print "Еще один хакер Perl";
Другие люди подхватили это и начали писать умные или запутанные программы для
производить тот же результат, быстро выводя вещи из-под контроля, при этом обеспечивая
часов развлечений для их создателей и читателей.
У CPAN есть несколько программ JAPH наhttp://www.cpan.org/misc/japh>.
Как I убеждать другими организациями в использование Perl?
(предоставлено brian d foy)
Апеллируйте к их личным интересам! Если Perl для них в новинку (и поэтому пугает), найдите что-нибудь
что Perl может сделать для решения одной из их проблем. Это может означать, что Perl либо сохраняет
им что-то (время, головная боль, деньги) или что-то им дает (гибкость, сила,
проверяемость).
Как правило, польза от языка тесно связана с навыками людей, использующих
этот язык. Если вы или ваша команда можете стать быстрее, лучше и сильнее с помощью Perl,
вы принесете больше пользы. Помните, люди часто лучше реагируют на то, что они получают
Это. Если вы столкнетесь с сопротивлением, выясните, что эти люди получают от другого выбора.
и как Perl может удовлетворить это требование.
Вам не нужно беспокоиться о поиске или оплате Perl; это в свободном доступе и
несколько популярных операционных систем поставляются с Perl. Поддержка сообщества в таких местах, как
Perlmonks (http://www.perlmonks.com>) и различные списки рассылки Perl (
<http://lists.perl.org>) означает, что обычно вы можете быстро найти ответы на свои проблемы.
Наконец, имейте в виду, что Perl может не подходить для каждой работы. Ты много
лучше защищайте, если ваши утверждения разумны и основаны на реальности. Догматически
пропаганда чего-либо ведет к тому, что люди не обращают внимания на ваше сообщение. Честно говоря о возможном
недостатки вашего выбора Perl, поскольку любой выбор имеет компромиссы.
Вы можете найти эти ссылки полезными:
·http://www.perl.org/about.html>
·http://perltraining.com.au/whyperl.html>
АВТОР И АВТОРСКИЕ ПРАВА
Авторские права (c) 1997-2010 Том Кристиансен, Натан Торкингтон и другие авторы, как указано.
Все права защищены.
Эта документация бесплатна; вы можете распространять и / или изменять его на тех же условиях
как сам Perl.
Независимо от распространения, все примеры кода здесь находятся в открытом доступе. Ты
разрешено и рекомендуется использовать этот код и любые его производные в ваших собственных программах
для развлечения или ради прибыли, как вы считаете нужным. Простой комментарий в коде, указывающий на
FAQ был бы вежливым, но не обязательным.
Используйте perlfaq1 онлайн с помощью сервисов onworks.net