The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Релиз языка программирования Perl 5.24.0"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Разговоры, обсуждение новостей
Изначальное сообщение [ Отслеживать ]

"Релиз языка программирования Perl 5.24.0"  +/
Сообщение от opennews on 10-Май-16, 12:01 
После года разработки состоялся (http://www.nntp.perl.org/group/perl.perl5.porters/2016/05/ms...) релиз новой стабильной ветки языка программирования Perl - 5.24 (https://metacpan.org/release/perl). При подготовке нового выпуска было изменено около 360 тыс. строк кода, изменения затронули 1800 файлов, в разработке приняли участие 77 разработчиков.

Ветка 5.24 выпущена в соответствии с утверждённым пять лет назад фиксированным графиком разработки, подразумевающим выпуск новых стабильных веток раз в год и корректирующих релизов - раз в три месяца. Примерно через месяц планируется выпустить первый корректирующий релиз Perl 5.24.1, в котором будут исправлены наиболее значительные ошибки, выявленные в процессе внедрения Perl 5.24.0. Одновременно с выходом Perl 5.24 прекращена поддержка ветки 5.20, для которой в будущем могут быть выпущены обновления только в случае выявления критических проблем с безопасностью. Также начался процесс разработки экспериментальной ветки 5.25, на базе которой в мае 2017 года будет сформирован стабильный релиз Perl 5.26.


Ключевые изменения (https://metacpan.org/pod/release/RJBS/perl-5.24.0/pod/perlde...):

-  В разряд стабильных возможностей переведена операция постфиксного разыменования (postderef), которая ранее поставлялась в числе экспериментальных функций и требовала активации специального флага "use feature postderef". Операция постфиксного разыменования "$sref->$*" эквивалентна "${ $sref }", "$aref->@*" эквивалентна "@{ $aref }", а "$href->%{ ... }" - "%$href{ ... }";

-  Добавлена поддержка Unicode 8.0 (http://www.unicode.org/versions/Unicode8.0.0/);

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


-  В регулярных выражениях появился новый оператор "\b{lb}", определяющий место в Unicode-строке, в котором последовательность символов может быть разорвана для того, чтобы вывод уместился в заданную ширину экрана. Ранее возможность поставлялась в виде модуля Unicode::LineBreak (http://search.cpan.org/~nezumi/Unicode-LineBreak-2016.003/li...);

-  Скобки (http://search.cpan.org/~rjbs/perl-5.24.0/pod/perlrecharclass...) "qr/(?[ ])/" c расширенными условиями определения классов символов теперь применимы для включенных через "use locale" локалей  UTF-8. Задаваемые в скобках шаблоны преобразуются в штатные правила Unicode;

-  Более явно определены операции сдвига целых чисел ("<<" и ">>"), которые теперь не зависят от поведения реализации на Си. Например, точно определено поведение при сдвиге отрицательных чисел и при переполнении числа. Сдвиг отрицательного числа  определён как операция сдвига в обратную сторону (операция сдвига отрицательного числа влево приведёт к выполнению сдвига вправо и наоборот). Выходящие за границы сдвигаемые биты воспринимаются как ноль;

-  В printf и sprintf добавлена возможность применения обратного порядка указания аргументов настройки точности, например, вызов "sprintf '|%.*2$d|', 2, 3" вернёт "|002|";
-  Расширено число полей, передаваемых в callback-обработчик sigaction, вызванный с флагом SA_SIGINFO. В число таких полей теперь входят errno, status, uid, pid, addr и band;


-  Расширены правила передачи скрипта в другой интерпретатор. Ранее передача осуществлялась если в заголовке скрипта отсутствовало слово "perl" (например, "#!/bin/sh"). Теперь проброс также осуществляется и при наличии слова perl6 для улучшения совместимости с Perl 6;


-  Несовместимые изменения:


-  Прекращена поддержка экспериментальных переменной "my $_" и функции авторазыменования (autoderef), которые признаны неудачными нововведениями. Переменная "my $_" была добавлена в Perl 5.10 и вызывала больше путаницы, чем пользы. Механизм autoderef позволяющий выполнить push/pop/... для каждого скалярного аргумента также не получил распространения;

-  Прекращена поддержка вложенных выражений определения переменных. Блоки my, our и state теперь не могут пересекаться, например, выражение "my ($x, my($y))" является недопустимым;

-  Некоторые шаблоны регулярных выражении, приводящие к ошибкам во время выполнения, теперь приводят к выводу ошибки во время компиляции выражения (т.е. ошибка выводится сразу, а не через какое-то время работы программы). Например, добавлены предварительные проверки корректности использования шаблонов \p{} и \P{};


-  Ничего не делающее выражение "qr/\N{}/" (пустой "\N{}") теперь недопустимо в режиме "strict";

-  Прекращена поддержка класса символов "/\C/", для оценки отдельных байтов строки UTF8 рекомендуется использовать utf8::encode();
-  Вызов chdir('') теперь не приводит к смене текущего пути на домашнюю директорию, следует использовать chdir();
-  Все ASCII-символы, используемые в именах переменных, должны быть видимыми;
-  В категорию устаревших возможностей переведено использование функций sysread(), syswrite(), recv() и send() с обработчиками :utf8;

-  Производительность:

-  Сокращены накладные расходы при входе и выходе из области видимости, что привело к ускорению вызова подпрограмм, циклов и базовых блоков. Например, вызов пустой функции "sub f{} f()" теперь занимает на треть меньше времени;
-  На платформах с поддержкой оптимизированных реализаций memchr()  в libc значительно ускорено выполнение операций с шаблонами, в которых используются фиксированные строки. Например, на системах с memchr() с оптимизациями для современных x86_64 CPU выражения $s = "a" x 1000 . "wxyz" и $s =~ /wxyz/ for 1..30000 выполняются в 7 раз быстрее, чем при использовании неоптимизированного варианта memchr(). Отмечаются и регрессии для достаточно нетипичных применений, например, "ab" x 1000 =~ /aa/ выполняется в 1.5 раза медленнее;

-  Ускорены операции сложения, деления и умножения 64-разрядных целых чисел за счёт оптимизации проверки пограничных условий;
-  Ускорены операции инкремента и декремента (++i, i++, --i, i--) ха счёт выноса обработчиков разных условий в разные функции;

-  Значительно ускорены операции присвоения списку единственного аргумента, например "($x) = (...)" или "(...) = ($x)";-  Снижено пиковое потребление памяти, наблюдаемое в моменты компиляции шаблонов регулярных выражений;

-  Безопасность:


-  Изменено поведение установки маски прав доступа при создании временных файлов. В 5.22 маска устанавливалась в 0600 до вызова mkstemp(3) и восстанавливалась после вызова, что приводило к появлению файлов с правами 0066 (доступ на запись и чтение) на системах с применяемой по умолчанию маской 0666. В новой версии в качестве значения umask используется 0177;

-  Решены проблемы (CVE-2015-8608 (https://rt.perl.org/Public/Bug/Display.html?id=126755)) с доступом к областям вне границы буфера в коде обработки файловых путей на платформе Win32;

-  Уязвимость в XS File::Spec::canonpath (CVE-2015-8607 (https://rt.perl.org/Public/Bug/Display.html?id=126862));
-  Добавлены дополнительные проверки для защиты от обращения к неинициализированной памяти  при вызове функции crypt() на платформе Win32. В том числе добавлена проверка на использование слишком коротких значений salt или указания некорректных символов в salt;

-  Обеспечено удаление дубликатов переменных окружения в хэше %ENV. Ранее сохранялся последний из дубликатов, в то время как   getenv() возвращал первый, теперь поведение унифицировано. Дубликаты также удалены из environ[], что прикрыло возможные способы атаки (CVE-2016-2381);


-  Обновлены версии модулей, входящих в базовую поставку.-  В состав возвращён порт для платформы AmigaOS. Во FreeBSD задействована (https://rt.perl.org/Ticket/Display.html?id=126847) функция fdclose(). Включена большая порция изменений, связанных  поддержкой работы на платформе Win32;


URL: http://perlnews.org/2016/05/perl-5-24-released/
Новость: http://www.opennet.dev/opennews/art.shtml?num=44394

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Релиз языка программирования Perl 5.24.0"  +30 +/
Сообщение от Вовик_Путтин on 10-Май-16, 12:01 
Лучший скриптовый язык. Неосиляторы, минусуйте!
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

3. "Релиз языка программирования Perl 5.24.0"  +4 +/
Сообщение от Crazy Alex (ok) on 10-Май-16, 12:18 
Согласен. Именно как скриптовый в оригинальном понимании - "быстро накидать автоматизацию для себя, часто - на один раз" перл даже сравнить особенно не с чем.
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

4. "Релиз языка программирования Perl 5.24.0"  +9 +/
Сообщение от Какаянахренразница (ok) on 10-Май-16, 12:20 
Неосилятор, но минусовать не буду. Буду плюсовать и завидовать.
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

5. "Релиз языка программирования Perl 5.24.0"  –7 +/
Сообщение от grec on 10-Май-16, 12:21 
Только вот встречаются не редко проекты по типу "начали писать на perl. Ой фак. Переписали на python. Полет нормальный".

PS Не фанат python.

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

19. "Релиз языка программирования Perl 5.24.0"  –5 +/
Сообщение от Crazy Alex (ok) on 10-Май-16, 14:48 
Да, для проектов его сейчас применять не стоит.
Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

37. "Релиз языка программирования Perl 5.24.0"  +/
Сообщение от Wtf on 10-Май-16, 19:09 
Можно узнать, почему?
Ответить | Правка | ^ к родителю #19 | Наверх | Cообщить модератору

40. "Релиз языка программирования Perl 5.24.0"  +2 +/
Сообщение от коро on 10-Май-16, 19:30 
Наверное, собеседник не до конца правильно выразился. В принципе, если есть слаженная команда, то очень даже стоит. А если строить команду с нуля для разработки, то появляется проблема кадров: программистов на перле найти тяжелее, чем на жс/руби/другом модном языке.
Ответить | Правка | ^ к родителю #37 | Наверх | Cообщить модератору

48. "Релиз языка программирования Perl 5.24.0"  +2 +/
Сообщение от rshadow (ok) on 10-Май-16, 21:08 
На перле как правило спецы работают. На фронтенд перловиков сажать реально не нужно и дорого.
Ответить | Правка | ^ к родителю #40 | Наверх | Cообщить модератору

50. "Релиз языка программирования Perl 5.24.0"  +/
Сообщение от коро on 10-Май-16, 22:02 
Почему же на фронтэнд? На сколько я в курсе текущей ситуации (а я могу быть совсем не в курсе), то всё указанное выше сейчас прекрасно работает бекендах.

А по поводу спецов — всё верно. На перле либо только-только начавшие учить язык, либо спецы, которые за среднюю зарплату не пойдут пилить проекты. Уверенных середнячков на перле найти сложно, куда проще на других популярных языках.

Ответить | Правка | ^ к родителю #48 | Наверх | Cообщить модератору

58. "Релиз языка программирования Perl 5.24.0"  +/
Сообщение от Crazy Alex (ok) on 11-Май-16, 10:50 
Я выразился ровно так, как и хотел. Учитывая, что моим основным языком был перл не один год - я знаю, о чём говорю. То, что нужно поддерживать/расширять, лучше писать на рубях/питонах/Go/D/ещё чём-то. И дело в чисто технических недостатках. Одного отсутствия нормальных прототипов и проблем с юникодом хватит. Причём юникод там так хитро поломан, что если для конкретного случая можно подкостылить, то наваять какой-то общий подход довольно проблематично - слишком много вариантов, особенно у модулей. А принципиальных преимуществ для написания софта нет по сравнению с конкурентами. Ну и скорость у него так себе, если не считать процессинг текста. Особенно если об ООП речь идёт.

Лет N назад всё было по-другому - Перл - это ж практически первый скриптовый язык, на котором можно что-то большое написать.

Ответить | Правка | ^ к родителю #40 | Наверх | Cообщить модератору

6. "Релиз языка программирования Perl 5.24.0"  +/
Сообщение от IMHO on 10-Май-16, 12:21 
> Лучший скриптовый язык

Лучший скриптовый язык это тот на котором пишешь, а так нету времени учить мне все языки программирования

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

8. "Релиз языка программирования Perl 5.24.0"  +3 +/
Сообщение от Аноним (??) on 10-Май-16, 12:30 
Так разберись с Perl и появится время на другие языки или что-нибудь еще. :)
Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

22. "Релиз языка программирования Perl 5.24.0"  –2 +/
Сообщение от Аноним (??) on 10-Май-16, 15:36 
действительно, если вместо работы учить перл - много времени может высвободиться. особенно если работаешь авиадиспетчером или хирургом.
Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

25. "Релиз языка программирования Perl 5.24.0"  +6 +/
Сообщение от Аноним (??) on 10-Май-16, 16:46 
> ... авиадиспетчером или хирургом.

Слабак! Я вот бывало прибегу после смены авиадиспетчером в поликлинику и по 10 операций за ночь. А после поликлиники еще и таксовал, а пока клиентов ждал перл учил с планшета.

В принципе я еще и на машинке вышивать умею.

Ответить | Правка | ^ к родителю #22 | Наверх | Cообщить модератору

56. "Релиз языка программирования Perl 5.24.0"  –2 +/
Сообщение от Аноним (??) on 11-Май-16, 00:47 
Операции ночью в поликлинике? Вы там органы вырезали что-ли?.. Кошмар. Вот какие у нас диспетчера во еропортах оказыца...
Ответить | Правка | ^ к родителю #25 | Наверх | Cообщить модератору

76. "Релиз языка программирования Perl 5.24.0"  +/
Сообщение от Аноним (??) on 12-Май-16, 16:01 
Ващщета, травмпункты работают круглосуточно...
Ответить | Правка | ^ к родителю #56 | Наверх | Cообщить модератору

36. "Релиз языка программирования Perl 5.24.0"  +/
Сообщение от user455 on 10-Май-16, 18:17 
> Лучший скриптовый язык. Неосиляторы, минусуйте!

сколько скриптовых языков ты знаешь?

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

67. "Релиз языка программирования Perl 5.24.0"  +/
Сообщение от Аноним (??) on 11-Май-16, 23:32 
>> Лучший скриптовый язык. Неосиляторы, минусуйте!
> сколько скриптовых языков ты знаешь?

Он знает один, разумеется. И это не баш! :)

Ответить | Правка | ^ к родителю #36 | Наверх | Cообщить модератору

61. "Релиз языка программирования Perl 5.24.0"  +/
Сообщение от Аноним (??) on 11-Май-16, 18:54 
а когда он сдохнет из-за несовместимости версий не подскажете?
Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

7. "Релиз языка программирования Perl 5.24.0"  +/
Сообщение от Stax (ok) on 10-Май-16, 12:26 
Призываю в тред ненавистников проверенных стабильных версий, пусть популярно объяснят народу, что Perl 5 давно пора похоронить и прекратить поддерживать, а нынче писать можно только на Perl 6 (да-да, тех самых из соседнего треда, кто агитировал за Python 3 и не понимал, почему в реальности все продолжают писать на Python 2).
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

12. "Релиз языка программирования Perl 5.24.0"  –5 +/
Сообщение от Аноним email(??) on 10-Май-16, 12:54 
зачем хоронить - пусть чернь поддерживает легаси проекты на perl.
а мы будем писать на языке бояр - Go.
Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

30. "Релиз языка программирования Perl 5.24.0"  +3 +/
Сообщение от _ (??) on 10-Май-16, 17:47 
> а мы будем писать на языке бояр - Go.

Писать на языке бояр - не значит быть боярином! Так смердом и закончишь :)))

Ответить | Правка | ^ к родителю #12 | Наверх | Cообщить модератору

69. "Релиз языка программирования Perl 5.24.0"  +/
Сообщение от Аноним (??) on 11-Май-16, 23:32 
>> а мы будем писать на языке бояр - Go.
> Писать на языке бояр - не значит быть боярином! Так смердом и
> закончишь :)))

Кто из грязи вышел в князи - тот не человек (с) Русская поговорка, кстати.

Ответить | Правка | ^ к родителю #30 | Наверх | Cообщить модератору

31. "Релиз языка программирования Perl 5.24.0"  +/
Сообщение от _ (??) on 10-Май-16, 17:50 
> Perl 5 давно пора похоронить и прекратить поддерживать, а нынче писать можно только на Perl 6

У тебя задержка развития? Жалость то какая :( Ну ничего, лет ещё чере 10 до тебя тоже дойдёт что это два разных языка. Как С и С++.

> соседнего треда, кто агитировал за Python 3 и не понимал, почему в реальности все продолжают писать на Python 2).

В какой реальности? Поставь бубунту - там тольуо третий питон уже. Второй - если нуже - надо ставить руками. И так - везде.

Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

45. "Релиз языка программирования Perl 5.24.0"  +/
Сообщение от Stax (ok) on 10-Май-16, 20:19 
> У тебя задержка развития? Жалость то какая :( Ну ничего, лет ещё чере 10 до тебя тоже дойдёт что это два разных языка. Как С и С++.

Да мне, в общем, без разницы; просто несколько смешно читать комментарии людей, не понимающих всю разницу между python 2 и 3, но почему-то считающих, что perl 6 сильно отличается от perl 5. Принципиально (читая http://perl6.su/charta.html и https://doc.perl6.org/language/5to6-nutshell) это один язык, несколько измененный синтаксис вполне себе покрывается автоматическим преобразованием. Ссылки на некоторые из них есть в конце второго документа, кстати.
Это примерно соответствует изменениям синтаксиса python 2 -> 3 (где тоже можно применить автоматический транслятор 2to3 и получить из python 2 кода нечто, синтаксически пригодное для python 3. В теории. На практике, конечно, без ручной правки не обойтись).

> В какой реальности? Поставь бубунту - там тольуо третий питон уже. Второй - если нуже - надо ставить руками. И так - везде.

Ну, что там из коробки - это одно дело. А в реальном софте лишние проблемы с python3 (без каких-либо явных преимуществ) никому не сдались, когда все модули гарантировано собираются и проверяются под python2, а пытаться разобраться с проблемами, насколько что хорошо работает под python3 (не получая ничего взамен) никому особо не нужно. И пишут под python2, не заморачиваясь. По-моему за пределами django python3 никому не интересен от слова "совсем".

Т.к. perl 6 вышел позже python 3, мне было любопытно, выучится ли Ларри Уолл на ошибках python и сумеет ли сделать так, чтобы люди действительно переходили - и можно было прекратить поддерживать предыдущую версию. К сожалению, похоже, не вышло.

На самом деле, это грустно, конечно. С точки зрения прогресса я за то, чтобы все писали на perl 6 и python 3 и не думали о предыдущих версиях. А с точки зрения реальности - пишу постоянно кучу python 2 кода и не имею никакого интереса в python 3 (кроме чистого любопытства), как и другие разработчики. Никак преимущества не покрывают всего, что сломается или просто изменилось в синтаксисе.

Ответить | Правка | ^ к родителю #31 | Наверх | Cообщить модератору

46. "Релиз языка программирования Perl 5.24.0"  +1 +/
Сообщение от angra (ok) on 10-Май-16, 20:42 
У perl6, в отличии от python3, нет пригодных к использованию реализаций. Какая разница насколько хорош perl6, если он работает в 40 раз медленее perl5. Также я бы отметил, что Ларри, в отличии от Гвидо, не призывает к переходу на perl6.
Ответить | Правка | ^ к родителю #45 | Наверх | Cообщить модератору

70. "Релиз языка программирования Perl 5.24.0"  +/
Сообщение от Аноним (??) on 11-Май-16, 23:33 
> У perl6, в отличии от python3, нет пригодных к использованию реализаций. Какая
> разница насколько хорош perl6, если он работает в 40 раз медленее
> perl5. Также я бы отметил, что Ларри, в отличии от Гвидо,
> не призывает к переходу на perl6.

На баше пиши. И будет щастье.

Ответить | Правка | ^ к родителю #46 | Наверх | Cообщить модератору

9. "Релиз языка программирования Perl 5.24.0"  –3 +/
Сообщение от агент малдер on 10-Май-16, 12:34 
много ли вакансий вы выдели за последние пару лет для перла?
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

18. "Релиз языка программирования Perl 5.24.0"  +1 +/
Сообщение от _KUL (ok) on 10-Май-16, 13:58 
Но если в резюме увидят опыт работы с perl, написание многопоточной системы или обёртки на Plack, то у взорслых ИТ-шников сразу будет неосознанный прилив уважения в вашу сторону. Знает перл, значит смог в этих сумбурных хитросплетениях разобраться, значит не глупый человек.
Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

23. "Релиз языка программирования Perl 5.24.0"  –3 +/
Сообщение от PowerStyle on 10-Май-16, 16:24 
>...сразу будет неосознанный прилив уважения в вашу сторону.

А семью свою вы этим приливом уважения накормите?

Ответить | Правка | ^ к родителю #18 | Наверх | Cообщить модератору

32. "Релиз языка программирования Perl 5.24.0"  +/
Сообщение от _ (??) on 10-Май-16, 17:52 
>>...сразу будет неосознанный прилив уважения в вашу сторону.
> А семью свою вы этим приливом уважения накормите?

Хм... Знакомые перловщики голодными и затравленными не выглядят ... Шифруются? :)

Ответить | Правка | ^ к родителю #23 | Наверх | Cообщить модератору

44. "Релиз языка программирования Perl 5.24.0"  –4 +/
Сообщение от PowerStyle on 10-Май-16, 20:13 
Массовую статистику и перспективу для освоения ЯП предъявите?

Как ни крути, но если ЯП позволяет незатейливо выражаться
по принципу "Смотри как я умею!", то абсолютно нулёво,
что ты будешь соблюдать при написании своих скриптов.
Ты не один. А значит будешь тратить время на расшифровку
очередного смотрикакяумею стиля.
Наверно поэтому, очень желательно иметь ТЗ(а не сам Perl код)
и переписать всё по своему смотрикакяумею.
Именно в этом проблема, и в Perl она выраженна наиболее показательно.

Ответить | Правка | ^ к родителю #32 | Наверх | Cообщить модератору

53. "Релиз языка программирования Perl 5.24.0"  +/
Сообщение от _ (??) on 10-Май-16, 22:23 
>Массовую статистику и перспективу для освоения ЯП предъявите?

Зачем? Ресурсов с подобным в сети >> 1 - иди да смотри ...

Но как это отменит зе факт о котором я писал? Не голодают сволочи! :)

И ещё - твой успех в последнюю очередь будет зависеть от языка который ты выучил ... вот такая вот фигня! :)

Ответить | Правка | ^ к родителю #44 | Наверх | Cообщить модератору

54. "Релиз языка программирования Perl 5.24.0"  +2 +/
Сообщение от Аноним (??) on 10-Май-16, 22:53 
> Как ни крути, но если ЯП позволяет незатейливо выражаться
> по принципу "Смотри как я умею!", то абсолютно нулёво,
> что ты будешь соблюдать при написании своих скриптов.

Ну вот вам очередной смотрикакяумею:


def unique(_, __ = type({( )})):
    __ = type("""
                      .-=-.          .--.
          __        .'     '.       /  " )
  _     .'  '.     /   .-.   \     /  .-'\
( \   / .-.  \   /   /   \   \   /  /    ^
  \ `-` /   \  `-'   /     \   `-`  /
jgs`-.-`     '.____.'       `.____.'""", (__,),
{'_' : __.__dict__[filter(lambda _: '_' not in _,
                    sorted(__.__dict__))[::-1].pop()]})( {( )} )
    return [_ for _ in _ if _ not in __ and not __._(_)]

И как, от того, что это питон, легче читается?
Ответить | Правка | ^ к родителю #44 | Наверх | Cообщить модератору

55. "Релиз языка программирования Perl 5.24.0"  +/
Сообщение от anonimous on 10-Май-16, 23:02 
С документацией более удобно читать код на любом языке.
Почему то, не учитывают, что Ларри лингвист. И он создал язык программирования более близкий к языку человека. Человек может описывать одно и то же разными словами и это же характерно для PERL.
И не надо смешивать в одну кучу стиль оформления кода, особенности кодирования и возможности языка. Это не правильно.
Есть разные задачи для которых более подходящим являются те или иные языки. Есть задачи для PERL, и их в общем числе задач стало относительно меньше, но они никуда не делись, о них стали меньше болтать. Примерно такая же ситуация с фортраном кода много, он используется, а болтавни фактически нет.
Ответить | Правка | ^ к родителю #44 | Наверх | Cообщить модератору

24. "Релиз языка программирования Perl 5.24.0"  +1 +/
Сообщение от nuclight (??) on 10-Май-16, 16:39 
Вполне.
Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

59. "Релиз языка программирования Perl 5.24.0"  +/
Сообщение от 1 (??) on 11-Май-16, 12:09 
http://www.raidix.ru/vacancy/team-lead-perl/
Ответить | Правка | ^ к родителю #9 | Наверх | Cообщить модератору

11. "Релиз языка программирования Perl 5.24.0"  +1 +/
Сообщение от Аноним (??) on 10-Май-16, 12:38 
> Ранее передача осуществлялась если в заголовке скрипта отсутствовало слово "perl" (например, "#!/bin/sh").

не распарсил

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

15. "Релиз языка программирования Perl 5.24.0"  +1 +/
Сообщение от Аноним (??) on 10-Май-16, 13:00 
>> Ранее передача осуществлялась если в заголовке скрипта отсутствовало слово "perl" (например, "#!/bin/sh").
> не распарсил

man perlrun

Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

14. "Релиз языка программирования Perl 5.24.0"  +/
Сообщение от Аноним (??) on 10-Май-16, 13:00 
Питон и перл - основа современных linux дистрибутивов. Только пакеты питона в убунте занимают 413 мегов. Это ценнейшая фишка! Если удалить - ничего не останется, нечему будет лагать, тормозить и забивать память. А так не интересно.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

17. "Релиз языка программирования Perl 5.24.0"  +/
Сообщение от Kibo on 10-Май-16, 13:27 
Например, CentOS 7 Minimal уже идёт без предустановленного Perl.
Ответить | Правка | ^ к родителю #14 | Наверх | Cообщить модератору

26. "Релиз языка программирования Perl 5.24.0"  +7 +/
Сообщение от freehck email(ok) on 10-Май-16, 17:30 
А ещё, CentOS 7 Minimal идёт с предустановленным systemd.
Ответить | Правка | ^ к родителю #17 | Наверх | Cообщить модератору

16. "Релиз языка программирования Perl 5.24.0"  –1 +/
Сообщение от Нанобот (ok) on 10-Май-16, 13:14 
>Все ASCII-символы, используемые в именах переменных, должны быть видимыми

кэп, не могли бы вы разъяснить это нововведение? интересуют невидимые ASCII-символы

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

20. "Релиз языка программирования Perl 5.24.0"  +1 +/
Сообщение от Аноним (??) on 10-Май-16, 14:51 
Названия переменных могли содержать управляющие сивмолы. Например переменную $^X - путь к текущему интерпретатору, можно было писать в виде $^X, где ^X - один символ, в vim-е можно ввести через CTRL_V CTRL_X в режиме вставки. Не бог весть какая фича, но кому она мешала, непонятно. В 5.22 вроде повесили варнинг на такие имена, что поломало например AnyEvent::Fork
Ответить | Правка | ^ к родителю #16 | Наверх | Cообщить модератору

21. "Релиз языка программирования Perl 5.24.0"  +/
Сообщение от anonymous (??) on 10-Май-16, 14:57 
\b & friends?
Ответить | Правка | ^ к родителю #16 | Наверх | Cообщить модератору

28. "Релиз языка программирования Perl 5.24.0"  –2 +/
Сообщение от Аноним (??) on 10-Май-16, 17:33 
Пошёл стирать пыль с АМИГИ....
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

33. "Релиз языка программирования Perl 5.24.0"  –1 +/
Сообщение от ALex_hha (ok) on 10-Май-16, 18:00 
честно, я пытался, два раза осилить сабж, но не осилил. В итоге ушел на python.
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

34. "Релиз языка программирования Perl 5.24.0"  +2 +/
Сообщение от Led (ok) on 10-Май-16, 18:14 
> честно, я пытался, два раза осилить сабж, но не осилил. В итоге
> ушел на python.

Молодец. Куда послали - туда и пошёл.

Ответить | Правка | ^ к родителю #33 | Наверх | Cообщить модератору

42. "Релиз языка программирования Perl 5.24.0"  +4 +/
Сообщение от angra (ok) on 10-Май-16, 19:36 
Я бы на твоем месте постеснялся публично расписываться в ниасиляторстве. Тем более, что на базовом уровне perl осваивали все быдлокодеры допыховой эпохи, да и среди сисадминов это довольно распространенный навык.
Ответить | Правка | ^ к родителю #33 | Наверх | Cообщить модератору

71. "Релиз языка программирования Perl 5.24.0"  +/
Сообщение от Аноним (??) on 11-Май-16, 23:35 
> Я бы на твоем месте постеснялся публично расписываться в ниасиляторстве. Тем более,
> что на базовом уровне perl осваивали все быдлoкодеры допыховой эпохи, да
> и среди сисадминов это довольно распространенный навык.

"Сисадмин" не синоним слова "идиoт". Для сисадминства достаточно шеллов. Выше крыши.

Ответить | Правка | ^ к родителю #42 | Наверх | Cообщить модератору

57. "Релиз языка программирования Perl 5.24.0"  +/
Сообщение от Аноним (??) on 11-Май-16, 06:55 
Эх ты! Даже девчонки смогли Perl осилить!

https://www.youtube.com/watch?v=lhiyx_90_00
https://www.youtube.com/watch?v=zlf63A-lYaI
https://www.youtube.com/watch?v=dlIlp5nwuwo

Ответить | Правка | ^ к родителю #33 | Наверх | Cообщить модератору

35. "Релиз языка программирования Perl 5.24.0"  +1 +/
Сообщение от chinarulezzz (ok) on 10-Май-16, 18:16 
Ура, лучший скриптовый язык с лучшей инфраструктурой!

Максим, принимай исправление новости. Coro нуждается в упоминании. Это важно.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

38. "Релиз языка программирования Perl 5.24.0"  +/
Сообщение от коро on 10-Май-16, 19:26 
А что там с коро? Поменялось разве что-то?
Ответить | Правка | ^ к родителю #35 | Наверх | Cообщить модератору

41. "Релиз языка программирования Perl 5.24.0"  +4 +/
Сообщение от chinarulezzz (ok) on 10-Май-16, 19:32 
> А что там с коро? Поменялось разве что-то?

В тот момент, когда перед выпуском Perl 5.24 остались считанные дни, в рассылке perl5-porters внезапно вспомнили, что в новом Perl по-прежнему остаётся сломанным модуль Coro Марка Леманна. Одна из проблем была связана с тем, что в Perl 5.22 структура MGVTBL (магическая виртуальная таблица), формирующаяся во время компиляции perl, стала константной. Coro делал переопределение в таблице, поэтому и не мог работать с новым Perl 5.22. Было предложено откатить это изменение до выхода Perl 5.24.

Вносить подобные изменения в последние дни перед выпуском слишком рискованно, поэтому произошёл спонтанный мозговой штурм проблемы, в результате которого удалось выяснить очень много интересных деталей. Оказалось, что переопределение MGVTBL требовалось Coro только для того, чтобы переопределить работу с хендлерами сигналов __DIE__ и __WARN__ для магического хеша %SIG, что в свою очередь было сделано из-за бага Perl, когда присутствует рассинхронизация в PL_warnhook и $SIG{__WARN__}. Теоретически оба должны ссылаться на хендлер обработки предупреждений, но некоторые кривые XS-программы, в том числе входящие в базовый Perl (например, find в PerlIO::Layer), могут изменить только PL_warnhook, забыв про $SIG{__WARN__}. То есть это был банальный костыль в Coro для обхода реальной проблемы в Perl. Эта проблема была зафиксирована в баге #125349,

Более того, оказалось, что Coro можно было приспособить для работы с константной MGVTBL, Dave Mitchell и Father Chrysostomos продемонстрировали патч, который позволяет Coro работать без проблем на Perl 5.22.

Очевидно, что если бы этот мозговой штурм прошёл год назад, проблема была бы решена раньше и не возникло бы таких явлений как stableperl. Вероятно штурм бы и не потребовался, если бы Марк сообщил о проблеме в Perl, когда столкнулся с ней впервые.

P.S. Спасибо perlnews.ru за инсайдерские скандалы, интриги, расследования)

Ответить | Правка | ^ к родителю #38 | Наверх | Cообщить модератору

43. "Релиз языка программирования Perl 5.24.0"  +/
Сообщение от коро on 10-Май-16, 19:38 
Это я читал уже пару дней назад, но на сколько я понял в 5.24 всё осталось по старому. Да и баг 125349 всё ещё открыт.
Здесь в irc народ пишет, что RURBAN запилил патч для coro и выпустил свою версию (https://metacpan.org/release/RURBAN/Coro-6.4801), которая, вроде, полностью рабочая.
Ответить | Правка | ^ к родителю #41 | Наверх | Cообщить модератору

47. "Релиз языка программирования Perl 5.24.0"  +1 +/
Сообщение от chinarulezzz (ok) on 10-Май-16, 21:08 
Прочитал это http://blogs.perl.org/users/aristotle/2016/05/coro-vs-5022.html

Чщорд, ты прав. Посыпаю голову пеплом.

Ответить | Правка | ^ к родителю #43 | Наверх | Cообщить модератору

51. "Релиз языка программирования Perl 5.24.0"  +/
Сообщение от коро on 10-Май-16, 22:07 
> Прочитал это http://blogs.perl.org/users/aristotle/2016/05/coro-vs-5022.html

О! Спасибо, что напомнили про этот линк, а то я отложил это в закладки и уже забыл про него)

Ответить | Правка | ^ к родителю #47 | Наверх | Cообщить модератору

52. "Релиз языка программирования Perl 5.24.0"  +/
Сообщение от chinarulezzz (ok) on 10-Май-16, 22:17 
Открыл для себя фичу metacpan:

https://metacpan.org/diff/file?target=RURBAN%2FCoro-6.4...

Ответить | Правка | ^ к родителю #51 | Наверх | Cообщить модератору

62. "Релиз языка программирования Perl 5.24.0"  +1 +/
Сообщение от Andrey Mitrofanov on 11-Май-16, 20:06 
> Открыл для себя фичу metacpan:
> https://metacpan.org/diff/file?target=RURBAN%2FCoro-6.4...

Какой уродливый :D   git log --decorate -p -1 -stat
Прямо вебдваноль какой-то
Там, поди, ещё и SVN унутре!?

Ответить | Правка | ^ к родителю #52 | Наверх | Cообщить модератору

49. "Релиз языка программирования Perl 5.24.0"  +3 +/
Сообщение от chinarulezzz (ok) on 10-Май-16, 21:18 
Кстати, у какого языка еще есть такая документация?


$ perl --help
...
Run 'perldoc perl' for more help with Perl.
$ perldoc perl

и понеслась)
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

63. "Релиз языка программирования Perl 5.24.0"  +2 +/
Сообщение от solomon243 (ok) on 11-Май-16, 23:13 
блестяще документирован. Работает быстро. Скриптуемость "на коленке" - отличная.

Недавно получил сертификат "Base Python" однако этим языком пользоваться не тороплюсь

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

73. "Релиз языка программирования Perl 5.24.0"  –2 +/
Сообщение от Аноним (??) on 11-Май-16, 23:36 
> блестяще документирован. Работает быстро. Скриптуемость "на коленке" - отличная.
> Недавно получил сертификат "Base Python" однако этим языком пользоваться не тороплюсь

Понты не колоти. Напиши на чем угодно расшифровщик урлов ютуба, например.

Ответить | Правка | ^ к родителю #63 | Наверх | Cообщить модератору

75. "Релиз языка программирования Perl 5.24.0"  –4 +/
Сообщение от ALex_hha (ok) on 12-Май-16, 10:10 
> Тем более, что на базовом уровне perl осваивали все быдлокодеры допыховой эпохи, да и среди сисадминов это довольно распространенный навык.

дело не в базовом уровне, а в удобстве работы с языком. Не знаю, может я странный, но не могу я принять синтаксис perl, какой то он "не правильный" :)

В python по начаду было не привычно из-за пробелов/табуляции, но к этому быстро привыкаешь. Ну и плюс, что python идет по дефолту в том же centos, а вот perl надо ставить дополнительно. Мелочь, а приятно

P.S.
Просто оставлю это здесь

http://bleaklow.com/images/2003/p6_cover_big.gif

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

77. "Релиз языка программирования Perl 5.24.0"  +1 +/
Сообщение от Crazy Alex (ok) on 12-Май-16, 19:21 
Мне вот питон "не правильный". Точнее, слишком правильный - примерно как если бы, напоминая кому-то про незакрытую дверь, я вместо того, чтобы сказать "эй, дверь!" начал бы "Уважаемый господин, обратите внимание, что дверь, которую принято закрывать, осталась закрытой. Пожалуйста, закройте её плотно".

А насчёт дефолтов - в моих дебиане с гентой перл из коробки. Питон, кажется, тоже, не интересовался.

А вообще - питонщикам пора на Go гнать, скорее всего именно он питон сменит.

Ответить | Правка | ^ к родителю #75 | Наверх | Cообщить модератору

78. "Релиз языка программирования Perl 5.24.0"  +1 +/
Сообщение от chinarulezzz (ok) on 12-Май-16, 22:14 
>примерно как если бы, напоминая кому-то про незакрытую дверь, я вместо того, чтобы сказать "эй, дверь!" начал бы "Уважаемый господин, обратите внимание, что дверь, которую принято закрывать, осталась закрытой. Пожалуйста, закройте её плотно".

Что мне нравится в perl, так это то, что можно в зависимости от "общества", выражаться то "эй, дверь!" - в делах сисадминских, или "уважаемый господин, ..." если в делах библиотечных. Все таки, это язык общего назначения. По крайней мере у меня.

Ответить | Правка | ^ к родителю #77 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру