The OpenNET Project / Index page

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

Релиз компилятора Rakudo 2022.02 для языка программирования Raku (бывший Perl 6)

13.02.2022 10:21

Представлен выпуск Rakudo 2022.02, компилятора для языка программирования Raku (бывший Perl 6). Проект был переименован из Perl 6 так как не стал продолжением Perl 5, как ожидалось изначально, а превратился в отдельный язык программирования, не совместимый с Perl 5 на уровне исходных текстов и развиваемый отдельным сообществом разработчиков. Одновременно доступен выпуск виртуальной машины MoarVM 2022.02, формирующей среду для запуска скомпилированного в Rakudo байт-кода. В Rakudo компиляция также поддерживается для JVM и некоторых виртуальных машин для JavaScript.

Из улучшений в Rakudo 2022.02 отмечается поддержка переменной окружения $RAKUDO_OPT для определения применяемых в компиляторе опций по умолчанию, добавлена функция rotor для группировки элементов списка, добавлена динамическая переменная $*RAT-UPGRADE-CLASS, в перечисления добавлены методы order и infer, реализованы недостающие проверки на значения NULL, в реализацию массивов добавлены методы unique, repeated и squish. В новой версии MoarVM улучшены реализации JIT и сборщика мусора, проведена чистка устаревшего кода, добавлены новые оптимизации и проверки для обеспечения безопасности.

  1. Главная ссылка к новости (https://rakudo.org/post/announ...)
  2. OpenNews: Релиз компилятора Rakudo 2021.12 для языка программирования Raku (бывший Perl 6)
  3. OpenNews: Язык Perl 6 переименован в Raku
  4. OpenNews: Анализ рисков при воплощении в жизнь инициативы Perl 7
  5. OpenNews: Релиз языка программирования Perl 5.34.0
  6. OpenNews: Анонсирован Perl 7
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/56690-rakudo
Ключевые слова: rakudo, raku, perl
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (82) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 10:34, 13/02/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    >(бывший Perl 6).

    А когда там уже седьмой перл выйдет?

     
     
  • 2.2, Аноним (2), 10:46, 13/02/2022 [^] [^^] [^^^] [ответить]  
  • –5 +/
    а смысл? язык полностью сдал свои позиции даже в тех областях, где он когда-то N-дцать лет назад был популярен. Сабж - просто попытки выкопать труп инвалида от рождения и сделать ему искусственное дыхание, хотя там и легких-то уже нет, все сожрала Мать Природа.
     
     
  • 3.3, Аноним (3), 11:12, 13/02/2022 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Сабж - новый язык, спеку начали писать ещё в 20хх, но релиз как это бывает несколько затянулся. Так что нет, это не попытка выкопать труп, это другой язык от тех же авторов.


    perl 7 уже есть https://gist.github.com/Grinnz/be5db6b1d54b22d8e21c975d68d7a54f

     
     
  • 4.4, Аноним (4), 11:37, 13/02/2022 [^] [^^] [^^^] [ответить]  
  • +3 +/
    >другой язык от тех же авторов.

    Много языков хороших и разных

     
     
  • 5.15, YetAnotherOnanym (ok), 18:33, 13/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Рэймонд Куни, залогиньтесь.
     
  • 4.5, Аноним (2), 11:40, 13/02/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > другой язык от тех же авторов

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

     
     
  • 5.7, Аноним (7), 12:05, 13/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Какая разница, как язык величает аноним с опеннета. Сабж — новый язык, сильно отличающийся от перал, но перенявший у него некоторые концепции.

    Где написано "перл 6" — значит, не успели исправить. Раньше язык носил это имя.

     
  • 3.8, Онаним (?), 15:03, 13/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > Сабж - просто попытки ... сделать ему искусственное дыхание

    Причём рот-в-рот.

     
  • 3.9, Аноним (9), 15:51, 13/02/2022 [^] [^^] [^^^] [ответить]  
  • +7 +/
    Пишет клоун, который вообще не умеет ни в какой код :)
     
     
  • 4.10, Аноним (2), 17:06, 13/02/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    так научись и прекрати им быть
     

  • 1.6, Skif (ok), 12:04, 13/02/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Раками кто-то пользуется? Под пивко небось?
    Ps: ностальгически вздохнул по пятой жемчужине и нулевых...
     
     
  • 2.12, Аноним (-), 17:37, 13/02/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >Ps: ностальгически вздохнул по пятой жемчужине и нулевых...

    А чего вздыхать ностальгически? Уж 5я перловка в любом линухе есть. Идёт жешь в комплекте ко всяким бубунтам и иже с ними. Бери да пиши.

     
     
  • 3.13, Аноним (13), 17:53, 13/02/2022 [^] [^^] [^^^] [ответить]  
  • –4 +/
    Да какая-то дичь, какие-то аутисты из копрошляпы в иксы напихали перла последние пару лет. Видимо, чтобы окончательно иксы закопать, а то пользователям что-то очень нравится когда у них всё работает -- так хоть перл утянет их на дно.
     
  • 2.14, Самокатофил (?), 18:05, 13/02/2022 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Пока перлхакеры пилили джастфофан новый язык, мир изменился. Они сделали перл с блекджеком и бабочками, а "продакшн" вовсю гнал стадо в го и петончег. Рыночек порешал, тут ничё не поделаешь.

    > Ps: ностальгически вздохнул по пятой жемчужине и нулевых...

    Хех, до сих пор мой рабочий инструмент. Я не так суперстар, и начинал учить его школотой, когда жемчужина уже теряла позиции. Просто это были всё еще времена, когда на лоре о опеннете тусовалось не так много уставших сеньёров с макбуком, и пинали школоту не в "успешный успех", а в "кр@сно глазие и пердоленг". А когда уже раскурил перловку, там уже не до другой скриптоты. Вот до сих пор и пишу. :)

     
     
  • 3.17, alexander lunev (?), 19:15, 13/02/2022 [^] [^^] [^^^] [ответить]  
  • +6 +/
    Отличный язык, пишу на нём до сей поры, под виндой и под никсами. При этом спокойно и на питоне могу. И вообще, на чем надо - на том и могу. Раньше нас так учили, что язык программирования учится за две недели, а основы и парадигмы программирования - они всегда и везде одинаковые (ок, не везде, есть еще LISP). Поэтому холивары про язык программирования мне непонятны - удобно вам на питоне писать - вперёд, кривые ноги. Очень неудобный язык, по сравнению с перлом.
     

  • 1.11, mos87 (ok), 17:32, 13/02/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Нужно.
     
  • 1.16, Аноним (16), 19:04, 13/02/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >Проект был переименован из Perl 6 так как не стал продолжением Perl 5

    Стал, просто перловики-утята это не приняли.

    >не совместимый с Perl 5 на уровне исходных текстов

    Будто перл 4 совместим с 5м на уровне исходных кодов

     
     
  • 2.19, Аноним (-), 20:13, 13/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >перловики-утята это не приняли.

    Как-то слышал от одного перловика, что Raku тормозной по сравнению с Perl-5. Кто пишет на Raku? Raku стал быстрее исполнять программы?

     
     
  • 3.45, Аноним (16), 23:17, 14/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >Как-то слышал от одного перловика, что Raku тормозной по сравнению с Perl-5.

    Это было во времена альфы, сейчас по тормознутости на уровне перла5, если не расставлять типы вручную.

     

  • 1.18, Аноним (16), 19:16, 13/02/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Кстати, отличный язык. Всё тот же хакерский швейцарский нож, но круче и современнее.
     
     
  • 2.20, Аноним (13), 00:36, 14/02/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    ps aux | grep python | wc -l
    65
    ps aux | grep perl | wc -l
    1
     
     
  • 3.21, Аноним (16), 03:09, 14/02/2022 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Посочувствовать тебе что ли?

    >ps aux | grep python | wc -l
    >1

     
     
  • 4.22, Аноним (13), 03:36, 14/02/2022 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Толку-то переживать когда

    $  memorycount.sh firefox
    Total RSS (ps): 3.639 gb
    Total (smaps-rss): 3.705 gb
    Total (smaps-pss): 2.940 gb

    $ memorycount.sh python
    Total RSS (ps): 0.673 gb
    Total (smaps-rss): 0.696 gb
    Total (smaps-pss): 0.492 gb

     
  • 4.24, Аноним (-), 07:13, 14/02/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Не надо. Он имел ввиду функционал языка, ты же показал то, что Python здорово плодит процессы.
     
     
  • 5.29, Самокатофил (?), 10:30, 14/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    :-D
     

  • 1.23, Аноним (23), 04:16, 14/02/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Perl - отстойный язык Нечитабельный, особенно когда количество кода возрастае... большой текст свёрнут, показать
     
     
  • 2.25, Аноним (-), 07:21, 14/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >Нечитабельный, особенно когда количество кода возрастает. Язык поощряет написание нечитабельного кода.

    Ты имеешь ввиду скрипты-однострочники. Или типичное состояние кода на перле?

     
     
  • 3.46, Аноним (23), 23:21, 14/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Типичное состояние кода на перле.
     
  • 2.26, m (??), 09:20, 14/02/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Попробуй Rust прочитай или go.
     
     
  • 3.60, DD (??), 17:48, 16/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Вот про GO не надо гнать. Читается на ура любой код. Но с дженериками да, попортят это.
     
  • 2.27, m (??), 09:23, 14/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Чтобы прочитать текст нужно знать язык, возмущаться бесполезно.
    Оформление можно автоматически поправить, для этого существует perltidy.
     
  • 2.28, Самокатофил (?), 10:24, 14/02/2022 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Список претензий похож на копипасту из нулевых про 4 перл от начинающих питонщи... большой текст свёрнут, показать
     
     
  • 3.31, Аноним (31), 12:59, 14/02/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >>Ужасные $, @ и % префиксы переменных.
    >Чем же они ужасны? Они указывают на тип.

    На тип должен указывать Тип.

     
     
  • 4.32, Самокатофил (?), 13:05, 14/02/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > На тип должен указывать Тип.

    Сигил и есть Тип.

     
  • 3.33, fi (ok), 14:58, 14/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >> Нечитабельный
    >Раст нечитабельный.

    Это он еще C не видел - пусть попробует из 10 стр. портянки понять что делает функция.

    Впрочем C++ даст 100 очков вперед по непонятности из-за косвенных вызовов функционала ))))))))))))

     
     
  • 4.34, Самокатофил (?), 15:10, 14/02/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >>> Нечитабельный
    >>Раст нечитабельный.
    > Это он еще C не видел - пусть попробует из 10 стр.
    > портянки понять что делает функция.

    как тут сказали, практика критерий истины.

    rust: https://github.com/uutils/coreutils/blob/main/src/uu/mktemp/src/mktemp.rs

    c: https://git.suckless.org/sbase/file/mktemp.c.html

    функционал 1 в 1.

    > Впрочем C++ даст 100 очков вперед по непонятности из-за косвенных вызовов функционала
    > ))))))))))))

    впрочем даже он чище раста. :)

     
     
  • 5.41, man man (?), 19:05, 14/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > rust: https://github.com/uutils/coreutils/blob/main/src/uu/mktemp/...
    > c: https://git.suckless.org/sbase/file/mktemp.c.html

    исправят в шестом патче в ведро. или шестьдесят шестом. или шестьсот шетьдесят... вы поняли тенденцию?

     
     
  • 6.44, Самокатофил (?), 20:52, 14/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >> rust: https://github.com/uutils/coreutils/blob/main/src/uu/mktemp/...
    >> c: https://git.suckless.org/sbase/file/mktemp.c.html
    > исправят в шестом патче в ведро. или шестьдесят шестом. или шестьсот шетьдесят...
    > вы поняли тенденцию?

    неистово доставляют ваши намёки :-D

     
  • 3.36, Аноним (-), 15:43, 14/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    как вас интересно читать. вы явно разбираетесь. вот тогда скажите пожалуйста - на сколько актуальна "дичь"\информация которая описана здесь - https://www.opennet.ru/base/dev/perl_memory.txt.html
    поясню - всё что там описано - череда дичайших НЕочевидностей (которые бабахали когда размер обрабатываемых данных приближался к реальным, боевым размерам). я вот как-то не встречал где бы это рекомендовали сразу писать "чистенько" на перл, чтобы потом не случалось то что описано по ссылке, а вы?
     
     
  • 4.38, Самокатофил (?), 16:05, 14/02/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Сарказм бро, имеет смысл когда ссылается на фейл Я ссылался на утверждения демо... большой текст свёрнут, показать
     
  • 3.37, freehck (ok), 15:51, 14/02/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/

    >> flatmap

    Кстати, никогда не понимал любви некоторых языков к этой странной функции. Все же понимают, что это map с последующим flatten-ом. Так зачем огород городить?

     
     
  • 4.39, Самокатофил (?), 16:21, 14/02/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >>> flatmap
    > Кстати, никогда не понимал любви некоторых языков к этой странной функции. Все
    > же понимают, что это map с последующим flatten-ом. Так зачем огород
    > городить?

    Ну функциональщики любят алиасы :-D Но притензию к Perl'y я не понял. Учитывая контекст-зависимую природу map/grep'a в Perl, это же вообще ненужная сущность.

     
     
  • 5.42, freehck (ok), 20:08, 14/02/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Ну функциональщики любят алиасы :-D

    Как функциональщик, я данным тезисом озадачен.


     
     
  • 6.43, Самокатофил (?), 20:22, 14/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >> Ну функциональщики любят алиасы :-D
    > Как функциональщик, я данным тезисом озадачен.

    Я попытался спетросянить, что ввиду того, что функциональщики не любят присваивание, они будут плодить одинаковые/похожие функции. Просто я это... не могу, сделав фокус, уйти не обосравшись после этого. :D

     
  • 4.50, Аноним (23), 03:01, 16/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Как в этой ветке модно спрашивать, вы точно функциональщик Давайте попробую ... большой текст свёрнут, показать
     
     
  • 5.56, Самокатофил (?), 04:34, 16/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >[оверквотинг удален]
    > Either<Error, Type5> resultMonad = initialMonad
    >   .flatMap(function1)
    >   .flatMap(function2)
    >   .flatMap(function3)
    >   .flatMap(function4)
    > Если бы function1..function4 возвращали бы просто Result1..Result4 без ошибок - хорошо
    > подошёл бы простой map. Но так как каждая функция возвращает Either
    > - то нужно этот Either автоматически распаковывать, что flatMap и делает.
    > В этом случае flatMap - логически одна операция, поэтому и сделали
    > flatMap, совмещающий map и flatten.

    какая-то теоретизированная др04ка вприсядку для строготипизированной скриптоты. Чем map не угодил?

     
  • 5.57, freehck (ok), 10:48, 16/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > Давайте попробую объяснить, надеюсь будет полезно.

    Слушай, да, это как минимум интересно. По факту мне стало понятно вот что: если я мыслил обо flatten исключительно как о типе 'a list list -> 'a list, то ты мыслишь о нём, как о 'a t t -> 'a t для произвольного t. В этом контексте flatmap уже видится в другом свете. Но меня не покидает дежавю. Я постоянно пользовался тем же Option.bind, и он очень похож на flatmap, описанный тобой: 'a option -> ('a -> 'b option) -> 'b option. И по типу, и по смыслу. Похоже, что это другое название той же самой сущности, с которым я просто чаще сталкивался по жизни.

    Но если ты правду говоришь, и flatmap действительно трактуется так широко, то мне всё же не понятно, почему оно называется flatmap. Ну как бы с 'a list всё понятно. Там мы реально строим отображение и сглаживаем его. В случае, если вместо list-а был бы какой-нибудь условный set -- тоже было бы понятно. Но в случаях с 'a option или ('e, 'a) result -- ну как это можно называть map-ом... Это уже аналог apply, а не map-а. В общем, мне сдаётся, что называть эту функцию банальным bind-ом разумнее, нежели flatmap-ом.

    Насколько распространено использование flatmap-а в обозначенном тобой контексте? В смысле, когда flatmap и flatten суть синонимы bind и join. Я хотел бы увидеть, что flatmap действительно рассматривается так широко, как ты это сейчас описал. Может быть, у тебя найдётся ссылка на соответствущую литературу?

    PS: Если моё недоверие тебя задевает, я конечно извиняюсь, но пойми меня и ты -- я сходу этого не нагуглил, плюс к тому мы на опеннете: тут чего только за истину в последней инстанции выдать ни пытаются. То, что ты пишешь, выглядит очень похоже на правду. Но мне нужен пруфлинк.

     
     
  • 6.61, Аноним (23), 23:00, 16/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Да, flatMap это и есть bind Даже с Option и Either flatMap можно разбить на map... большой текст свёрнут, показать
     
     
  • 7.63, freehck (ok), 00:36, 17/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >> Я постоянно пользовался тем же Option.bind, и он очень
    >> похож на flatmap, описанный тобой
    > Да, flatMap это и есть bind.

    Да, я уже и сам нашёл. Причём именно на примере OCaml / Haskell: https://web.archive.org/web/20190918044550/https://typeslogicscats.gitlab.io/p

    (увы только web archive, ребята удалили страницу, но оно того стоит)

    > По мне так слово bind может означать очень много чего, в том числе и то, что делает flatMap.

    Я соглашусь, что bind штука перегруженная, но и flatmap тут этимологию имеет только ту, что он образован генерализацией классических списковых map и flatten. Всё-таки более корректно тут говорить про monadic bind, насколько я понимаю, это исходное название. А вот flatmap -- уже производное название. Ну да ладно. В любом случае придётся говорить на том языке, на котором говорят все.

    > Для Окамла твоего не знаю литературы. Для Скалы можешь попробовать "Functional Programming
    > in Scala" или "Get Programming with Scala", вот статья по мотивам
    > текста оттуда

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

    PS: Я внезапно осознал, что монада -- это просто тип, для которого определен monadic bind с условиями ассоциативности и тождественности. Ну вот почему никто не даёт монаде простого определения? Сразу бы определяли нормально, глядишь, в ФП было бы больше народу. А то развели, мол, монада есть эндофунктор с парой естественных преобразований... Оно-то может и то же самое, но должна же быть золотая середина между академиками и практиками...

    PPS: ну в общем, этот небольшой разговор привёл меня внезапно к пониманию, что такое монада, чего я избегал последние несколько лет, так что -- спасибо. =)

     
     
  • 8.71, Аноним (23), 17:17, 18/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Functional Programming in Scala и Get Programming with Scala - это как раз к... текст свёрнут, показать
     
     
  • 9.85, freehck (ok), 00:56, 19/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Я знаю Дорогой, не принимай близко к сердцу, но что-то до тебя туго доходит ... текст свёрнут, показать
     
  • 7.65, freehck (ok), 11:26, 17/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > Для Скалы можешь попробовать

    Дорогой, я кстати только что понял, что ты тот же самый Аноним, что и исходный пост треда написал. =)

    Есть к тебе вопрос в таком случае... То есть Perl ты не любишь, а Scala ты любишь...  Но как же так? Их ведь так роднит обилие синтактического сахара! =)))

     
     
  • 8.76, Аноним (23), 18:57, 18/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Хм, какой-то дурацкий вопрос, содержащий как минимум 3 сомнительных утверждения ... большой текст свёрнут, показать
     
     
  • 9.83, Самокатофил (?), 20:24, 18/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Мощщщя Мощнота Мощщщность Однозначно мощщщя Мощнота Мощщщность А зачем ру... текст свёрнут, показать
     
  • 9.84, freehck (ok), 00:50, 19/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Ну, первые два есть, и спорить с этими утверждениями вряд ли вряд ли кто в здрав... большой текст свёрнут, показать
     
     
  • 10.86, Аноним (23), 02:14, 19/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Ну, у нас с тобой наверное разные представления о том, сколько сахара много, а с... большой текст свёрнут, показать
     
     
  • 11.87, freehck (ok), 02:52, 19/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Хорошо Не будем играть в психологов Я тебе прямо и без намёков всё скажу Как ... текст свёрнут, показать
     
     
  • 12.88, Аноним (23), 04:14, 19/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    И продолжил играть в психолога Я тебе ещё одну вещь расскажу, надеюсь опять ... большой текст свёрнут, показать
     
     
  • 13.89, freehck (ok), 12:04, 19/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Да, да Просто помни об этом тезисе, когда получишь второе подтверждающее мнение... текст свёрнут, показать
     
     
  • 14.90, Аноним (23), 20:58, 19/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Ты что, не понял ничего Ты же про меня только что историю придумал Про себя по... текст свёрнут, показать
     
     
  • 15.91, freehck (ok), 10:23, 20/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Хорошо-хорошо, перестану ... текст свёрнут, показать
     
  • 5.62, Аноним (23), 23:11, 16/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Вместо

    > Если бы function1..function4 возвращали бы просто Result1..Result4 без ошибок - хорошо
    > подошёл бы простой map.

    конечно же имелось в виду:

    Если бы function1..function4 возвращали бы просто Type2..Type5 без ошибок - хорошо
    подошёл бы простой map.

     
  • 3.49, Аноним (23), 02:29, 16/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Это правда И Перл тоже Тем, что ужасно замусоривают код Вы про прототипы Тип... большой текст свёрнут, показать
     
     
  • 4.53, Самокатофил (?), 04:00, 16/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    О чем с тобой говорить, если я тебе говорю "man perlsubs" а ты спрашиваешь:

    > Вы про прототипы?

    И следом же

    > Но это же фигня какая-то. Даже на костыль не тянет.

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

     
     
  • 5.64, freehck (ok), 11:17, 17/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Я вообще-то тоже думал, что ты про прототипы. И "man perlsubs" -- плохо гуглится, а самого перла у меня нету под рукой. Может ты прояснишь мысль?
     
     
  • 6.66, Самокатофил (?), 13:37, 17/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > Я вообще-то тоже думал, что ты про прототипы.

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

    > И "man perlsubs" --
    > плохо гуглится, а самого перла у меня нету под рукой. Может
    > ты прояснишь мысль?

    Это ман.

    https://perldoc.perl.org/perlsub#Signatures

    Насколько оно нужно перловикам в реальной жизни -- видно по статусу. Нет, если прям охота -- всегда пожалуйста. Фичу даже если удалят, её можно будет включить прагмой use. Просто... когда у тебя есть возможность из функции создавать какие угодно сложные структуры данных, инкорпорирующие переданные в функцию параметры, то использовать эти сигнатуры нууууу... плюсов нет, обратная совместимость пострадает. В качестве документирующего код средства может? Ну есть perldoc с бородатых лет, все хорошие программисты им пользуются, а от плохих и сигнатуры не спасут. Нет, если нужно прям -- то вот оно, пожалуйста.

     
     
  • 7.67, freehck (ok), 16:21, 17/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >> И "man perlsubs" -- плохо гуглится, а самого перла у меня нету под рукой. Может ты прояснишь мысль?
    > Это ман.

    Да, да. И я тебе гарантирую, что людям, у которых нету перла на машине, натурально лень искать, откуда ставится эта ман-страница.

    > https://perldoc.perl.org/perlsub#Signatures

    Понял. Ну, здорово. Впрочем, я не сильно понимаю, зачем скриптовому языку такие финты ушами: я как бы никогда не слышал, чтобы кто-то на шелл ругался за то, что там параметры нельзя в шапке указать. Так и тут, я не понимаю, почему вдруг это для человека проблема: область применения данного инструмента располагает к тому, чтобы это не было проблемой.

     
     
  • 8.68, Самокатофил (?), 17:09, 17/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Когда ссылаются на ман -- ссылаются на ман Тут уж какие претензии Лень искать,... текст свёрнут, показать
     
     
  • 9.73, Аноним (23), 18:11, 18/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Про man persubs Который на самом деле perlsub Захотел я почитать сию ман-стр... большой текст свёрнут, показать
     
  • 2.35, freehck (ok), 15:38, 14/02/2022 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Блин, я не являюсь перл-программистом, а просто мимо этого языка проходил когда-... большой текст свёрнут, показать
     
     
  • 3.40, Самокатофил (?), 16:50, 14/02/2022 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >> * Сложность рефакторинга, обусловленная вышепереречисленными трудностями.
    > Вот тут ничего не смогу сказать.

    Есть их у меня :-P

    Вот если под рефакторингом тот "программист" понимает рестайлинг, то конечно, новичку timtowdy даст по щам. И чем зелёней новичок -- тем смачнее. Но ведь с таким рефакторингом справится и perltidy + perlcritic + Абу. Зачем называть рефакторингом то что отдалённо является им, а мерять его удобство по плачу обезьяны по сигилам. Для рефакторинга понадобятся: профайлер, дебаггер, дебаггер регулярок, тесты, и профессиональное сообщество хакеров, которое восполнит недостаток знания perl internals при "неожиданном поведении". По моему скромному мнению, с этим у перла лучше чем у многой скриптоты. Не говорю "всей" только из душевной скромности.

     
     
  • 4.52, Аноним (23), 03:57, 16/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Сам обозвал рефакторинг рестайлингом зачем , сам удивился, а обезьяной почем... большой текст свёрнут, показать
     
     
  • 5.54, Самокатофил (?), 04:04, 16/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >[оверквотинг удален]
    > могут сливаться, разбиваться, переименовываться. По сути, рефакторинг - это один из
    > способов снижения технического долга.
    > Рефакторинг в динамических языках - вообще неблагодарное занятие, по сравнению со статическими.
    > Но в Перл в этом деле сливает даже другим динамическим языкам.
    > Очень трудно что-то прорефакторить и не внести ошибок.
    > Вот, самое простое, поменять количество параметров в функции или поменять параметры местами.
    > И чтобы код продолжил работать. В Перле это будет сделать труднее,
    > чем в Питоне и Руби. Потому что вместо списка внятно именованных
    > параметров в Перле @_. А прототипы, которые не сильно бы и
    > помогли, никто не использует, ибо убоги.

    Нагенеренный AI инфошум. man perlsubs.

     
  • 5.70, Самокатофил (?), 17:22, 17/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Ты не понимаешь что такое прототипы, сигнатуры, и для чего они нужны. При изменении порядка аргументов функции нужно апдейтить документацию, потому что смотрят документацию, а не порядок аргументов функции в исходном коде. В общем, читни манца, дуде, и не пори чушь здесь про "рефакторинг".
     
     
  • 6.72, Аноним (23), 17:47, 18/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Я ж уже писал про это Во многих реальных проектах документация на функции часто... большой текст свёрнут, показать
     
     
  • 7.74, Самокатофил (?), 18:17, 18/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    >> При изменении порядка аргументов функции нужно апдейтить документацию, потому что смотрят документацию, а не порядок аргументов функции в исходном коде.
    > Я ж уже писал про это. Во многих реальных проектах документация на
    > функции часто бывает устаревшей или вообще отсутствует. Особенно для внутренних функций
    > модуля, не для API-функций. В идеале, конечно документация всегда должна быть
    > и должна апдейтиться. Но увы, далеко не всегда так бывает.

    В Perl принято писать POD. А документацию ради документации конечно, никто не пишет.

    >> смотрят документацию, а не порядок аргументов функции в исходном коде
    > Это правда для API-функций популярных библиотек. И почти всегда неправда для внутренних
    > функций.

    Ну дали тебе сигнатуры. Твой аргумент устарел лет на 8.

    > Чтобы далеко за примером не ходить, вот исходник, на который выше ссылку
    > кидали:
    > https://github.com/uutils/coreutils/blob/main/src/uu/mktemp/src/mktemp.rs
    > В файле определено несколько функций, у скольких из них есть документация? Спойлер:
    > ни у одной.

    И чем им поможет в данном случае параметры? Ты высасываешь из пальца аргументы к своему синдрому утёнка. Перловщикам не нужны сигнатуры en masse. Это подтверждается практикой, и я, как перловщик, говорю тебе об этом прямо, face to face. Что нужно для рефакторинга я тебе написал выше. Твои аргументы -- детский сад. Прости, не б обиду, дружище, но реально, это такая мелочь, что я просто не знаю как сказать это так, чтобы тебя не обидеть.

     
     
  • 8.77, Аноним (23), 19:14, 18/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Принимаю, что этот аргумент устарел Спасибо, что рассказал Можно было и без та... текст свёрнут, показать
     

  • 1.30, Аноним (31), 12:58, 14/02/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Ещё не запустили обсуждение нового названия для языка? А то с таким названием он не летун (не летец).
     
     
  • 2.47, Аноним (-), 07:31, 15/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    Для рускаго языка не летун. Для английского языка летун.
     

  • 1.48, AskerTV (ok), 18:06, 15/02/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Что то нигде нет про PHP, а ведь именно PHP и заменил Perl. PHP, давно уже предвещают конец, но он себя не плохо чувствует, развивается. Вот и Perl с его наследием, живёт. Много legacy-кода на нём, смысл его переписывать на PHP, или Python/Ruby/NodeJS/Go, если во время переписывания, будут опять появляться "новые самые лучшие языки программирования"?
    Уже и на Kotlin, пытаются делать веб-приложения/сайты.
     
  • 1.59, nich (ok), 11:53, 16/02/2022 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Признавайтесь, кто с раку игрался?
     
     
  • 2.69, Самокатофил (?), 17:11, 17/02/2022 [^] [^^] [^^^] [ответить]  
  • +/
    > Признавайтесь, кто с раку игрался?

    Признавайтесь, кто баловался с раку?! :3

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



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

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