LINUX.ORG.RU

Perl Weekly Challenge

 , , , ,


2

3

Весёлые старты для любителей Perl'а и всех кто хочет попробовать силы в чёрной магии.

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

Упор сделан на TIMTOWTDI. Организатор просит избегать гольфа и JAPH, в остальном: «Пусть расцветают сто цветов».

По итогам пишут отчёт с наиболее интересными решениями.

Цель: популяризация Perl, обмен опытом и веселье!

>>> Подробности

★★★★★

Проверено: Shaman007 ()

Интересные задачки. Спасибо за новость!

Odalist ★★★★★ ()
Ответ на: комментарий от question4

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

perl5_guy ★★★★★ ()
Ответ на: комментарий от perl5_guy

Я понял, что про противоположность «There’s More Than One Way To Do It» :)

question4 ★★★★★ ()

TIMTOWTDI

Даже в новости какое-то нечитаемое нечто, Перл такой перл (:

MrClon ★★★★★ ()
Последнее исправление: MrClon (всего исправлений: 1)
Ответ на: комментарий от vada

На Mojolicious много пишут. Оч. хороший фреймворк. Есть у нас и на нём несколько проектов. Правда небольших.

perl5_guy ★★★★★ ()

Круто. На выходных присоединюсь.

shell-script ★★★★★ ()

так-то codewars уже существует и perl там присутствует

Ford_Focus ★★★★★ ()
Ответ на: комментарий от perl5_guy

Спешите видеть

«What has been seen can't be unseen»

anonymous ()
Ответ на: комментарий от perl5_guy

+1

А ОТРС он вообще вечная тема особенно в европах

pinachet ★★★★★ ()
Ответ на: комментарий от pru-mike

Я тоже с точки зрения пользователя OTRS не ковырял. Могу с тех. стороны сказать. Это отличный конструктор. Я не видел чтоб кто-то чистую OTRS использовал, она очень сильно допиливается и каждый заказчик её под себя нагибает насколько фантазии хватает. В идеале, задачи по развитию должны ставить сведущие в ITIL люди. Большая проблема OTRS это малое количество перловиков, отсюда часто народ в 2-3 рыла за пятерых работает со всеми вытекающими. Тем не менее, даже в подобном хаосе удаётся существовать, что ещё раз говорит о достаточно грамотном изначальном проектировании и опровергает миф о ro коде на Perl.

perl5_guy ★★★★★ ()
Последнее исправление: perl5_guy (всего исправлений: 1)
Ответ на: комментарий от perl5_guy

Да, я именно про разработку (не использование).
Те разработчики OTRS которых я встречал, как раз жаловались на адский говнокод

pru-mike ★★ ()
Ответ на: комментарий от pru-mike

Говнокод вполне может впоследствии получиться (см. пункт про 2-3 рыла). В OTRS много костылей для обратной совместимости, это да. Плюс js немодный, не самые изящные обёртки над CGI. Но в 7й версии должны запилить vue.js, как минимум для клиентского интерфейса (В OTRS есть интерфейс для службы тех. поддержки (агентов) и для клиентов.), и даже Mojolicious в зависимостях есть. Не думаю что немцы резко на моджо мигрируют, тем не менее - процесс идёт. Правда исходный код семёрки хз когда опубликуют.

Как примеры сложного (плохого) кода, могу привести вот эти фалы: контроллер и шаблон.

perl5_guy ★★★★★ ()
Последнее исправление: perl5_guy (всего исправлений: 1)
Ответ на: комментарий от anonymous

Что не так, браточек? Я супротив зело постарался англицизмы не использовать.

perl5_guy ★★★★★ ()
Ответ на: комментарий от q0tw4

Можно. Для этого я ссылку на FAQ разместил и тег perl6 добавил среди прочих. Правда организатор Perl6 не знает и ему требуется волонтёр на обзор решений 6ки. Пока обзираются только версии на Perl5

perl5_guy ★★★★★ ()
Последнее исправление: perl5_guy (всего исправлений: 1)
Ответ на: комментарий от perl5_guy

Правда организатор Perl6 не знает и ему требуется волонтёр на обзор решений 6ки.

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

q0tw4 ★★★★ ()
Ответ на: комментарий от perl5_guy

Ну я забил на язык еще до выхода этой книги. Спасибо за совет)

q0tw4 ★★★★ ()
Ответ на: комментарий от pic0

Ты чего написал-то?

Во-первых, не =!, а !=.

Во-вторых, строковые литералы в кавычках должны быть.

В-третьих, сравнение строк надо делать через eq/ne.

perl5_guy ★★★★★ ()
Ответ на: комментарий от perl5_guy

Кстати, простите за дикий вопрос, где бы спереть «Perl 6 Deep Dive»? Не находится что-то сходу народная копия...

q0tw4 ★★★★ ()
Ответ на: комментарий от q0tw4

если не считать брейнфаков всяких

брейнфак не сложный. Всего 6 инструкций + 1 цикл. Самое то для обучения написания трансляторов/компиляторов/интерпретаторов. Хотя, вот для чтения — да, сложный.

P.S. Мне в 6-ке не хватает зрелой инфраструктуры, такой как у perl5. Недостаток либ даёт о себе знать.

Deleted ()
Ответ на: комментарий от perl5_guy

Во-вторых, строковые литералы в кавычках должны быть.

не обязательно)

$ perl -X -mutf8=all -E 'if (веселье != perl) {say "pic0 прав"} else {say "pic0 му^Wошибается"}'
Deleted ()
Ответ на: комментарий от Deleted

не обязательно)

"pic0 му^Wошибается", — сказал мне perl 5, version 28, subversion 2 (v5.28.2) built for x86_64-linux-thread-multi (with 48 registered patches, see perl -V for more detail).

dexpl ★★★★★ ()
Ответ на: комментарий от q0tw4

Не, сказать что пишу — эт громко сказано. Так, иногда пробую что-то автоматизировать, да вечно упираюсь в отсутствие модулей или их сырость и недоделанность, по сравнению с perl5.

Deleted ()
Ответ на: комментарий от q0tw4

Можно еще конвертор написать, p5to6. Возможности perl'a вроде позволяют это. Всяко интереснее, чем с нуля писать.

Deleted ()
Ответ на: комментарий от q0tw4

Самый сложный в мире язык как никак шестерка (если не считать брейнфаков всяких)

Очень странно, учится вполне нормально, императивщины полно. Переменные, рутины, классы. Да, есть много возможностей даже с ними, побольше, чем в среднем по больнице, но чтобы прям «самый сложный в мире»? Тогда такой дурак, как я, не смог бы на нём писать.

особенно в условиях недостатка манов, устаревшей литературы и отсутствия видеоуроков

К счастью, сейчас есть все эти perl6intro.com, официальная документация на docs.perl6.org, а также целая пачка свежих опубликованных книг по последнему стандарту - https://perl6book.com/, бери не хочу, что называется.

Lilly ()
Ответ на: комментарий от Deleted

Недостаток либ даёт о себе знать

Так пишем вроде. ;) Чего не хватает-то? Можно в https://github.com/perl6/perl6-most-wanted/blob/master/most-wanted/modules.md PR выслать, рассмотрим все варианты. Ну и желающих помочь с написанием батареек никто не прогоняет, а даже наоборот.

Lilly ()
Ответ на: комментарий от Deleted

Проблема в том, что два очень разных языка, прям очень-очень. Тут не прокатит как в питоне поставить скобки вокруг print-а(утрирую). :|

Вот как конвертить такой вот ужос(с моей точки зрения практически не знающего Perl 5) - https://metacpan.org/source/Net::LDAP::Filter в мягкий и шелковистый https://github.com/Altai-man/cro-ldap/blob/master/lib/Cro/LDAP/Search.pm6#L4-L30 ? Только руками разумного компилятора, то есть человека.

Появилось много фич и много полезных фич, при написании можно с нуля их использовать, а если писать глупенький polyglot-код, то будет из разряда шутки про «На любом языке программирования можно написать программу на фортране» - как бы и можно, но зачем, если вся польза от нивелируется?

Lilly ()
Ответ на: комментарий от Lilly

Проблема в том, что два очень разных языка, прям очень-очень.

Ага, в шестёрке даже регулярные выражения переделали. Не могу сказать насколько радикально - не разбирался. Тем не менее, многие фишки из 6ки залетают в Perl5. В сообществе происходит много интересного. Я не просто так упоминал выше Perl11

perl5_guy ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.