The OpenNET Project / Index page

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

Доступен язык программирования Perl 5.42

03.07.2025 22:30

После года разработки опубликован релиз новой стабильной ветки языка программирования Perl - 5.42. При подготовке нового выпуска было изменено около 280 тысяч строк кода (без документации и автоматически сгенерированного кода - 93 тысячи), изменения затронули 1500 файлов, в разработке приняли участие 64 разработчика.

Ветка 5.42 выпущена в соответствии с утверждённым двенадцать лет назад фиксированным графиком разработки, подразумевающим выпуск новых стабильных веток раз в год и корректирующих релизов - раз в три месяца. Примерно через месяц планируется выпустить первый корректирующий релиз Perl 5.42.1, в котором будут исправлены наиболее значительные ошибки, выявленные в процессе внедрения Perl 5.42.0. Одновременно с выходом Perl 5.42 прекращена поддержка ветки 5.38, для которой обновления могут быть выпущены в будущем только в случае выявления критических проблем с безопасностью. Начался процесс разработки экспериментальной ветки 5.43, на базе которой в июне 2026 года будет сформирован стабильный релиз Perl 5.44, если не будет принято решение перейти к нумерации 7.x.

Ключевые изменения:

  • Добавлены экспериментальные операторы обработки списков - "any { BLOCK } @list" и "all { BLOCK } @list", которые напоминают оператор "grep { BLOCK } @list", но могут возвращать только значения true или false. Оператор "all" возвращает "true" при выполнении условия для всех элементов списка, а оператор "any" - при выполнении условия хотя бы для одного элемента. Функциональность операторов аналогична функциям из модуля List::Util, но встроенные варианты быстрее и потребляют меньше памяти.
    
       use v5.42;
       use feature 'keyword_all';
       no warnings 'experimental::keyword_all';
       my @numbers = ...
       if ( all { $_ % 2 == 0 } @numbers ) {
           say "All the numbers are even";
       }
    
  • Для определяемых внутри класса полей реализован атрибут ":writer", применяемый для автоматического создания метода, записывающего значение переменной в поле для текущего экземпляра класса.
    
       class Point {
           field $x :reader :writer :param;
           field $y :reader :writer :param;
       }
       my $p = Point->new( x => 20, y => 40 );
       $p->set_x(60);
    
  • Добавлена поддержка определения лексических методов, которая по аналогии с определением лексических подпрограмм ("lexical_subs"), позволяет создавать методы, доступные только в области лексической видимости блока в котором они были созданы. Для создания подобных методов используется выражение "my имя_метода".
  • Добавлен оператор "->&", позволяющий вызывать подпрограммы, находящиеся в лексической области видимости, так, как будто они являются методами. В сочетании с возможностью определения лексических методов новый оператор реализует функциональность, похожую на приватные методы.
  • Добавлен оператор присвоения "A ^^= B", выполняющий операцию "A = A XOR B".
  • Добавлена прагма "source::encoding", определяющая кодировку исходного кода. Для кода в кодировке ASCII можно указать "use source::encoding 'ascii'" (по умолчанию), а для UTF-8 - "use source::encoding 'utf8'", при этом последнее выражение эквивалентно выражению "use utf8". Интерпретатор выведет ошибку, если в коде, помеченном как ASCII, встречаются символы UTF-8, или если в коде, помеченном как UTF-8, используются escape-последовательности "\x{}". Для отключения проверки части кода можно использовать значение "no source::encoding". На практике, добавленная прагма может оказаться полезной для выявления случаев, когда разработчик забыл указать "use utf8" для кода в кодировке UTF-8.
  • В пространство имён "CORE::" добавлена функция chdir(). Например, теперь к данной функции можно обращаться как "&CORE::chdir($dir)" или "my $ref = \&CORE::chdir; $ref->($dir)".
  • Добавлено выражение 'no feature "apostrophe_as_package_separator"' для отключения поддержки использования символа " ' " в качестве разделителя имён пакетов (например, "My'Module'Var" вместо "My::Module::Var"). Изначально в Perl 5.42 планировалось удалить поддержку подобных разделителей, которые ранее были объявлены устаревшими, но в ходе обсуждений было решено сохранить данную возможность по умолчанию, но предусмотреть опцию для отключения.
  • В число возвращаемых возможностей переведена функциональность "switch" и оператор "~~", которые ранее были помечены устаревшими и были запланированы к удалению. Начиная с выпусков Perl 5.36 и 5.42 возможности "switch" и "~~" по умолчанию отключены при привязке кода к версиям языка (например, при указании "use v5.42"), но могут быть активированы выражениями 'use feature "switch"' и 'use feature "smartmatch"'.
  • Добавлена поддержка спецификации Unicode 16.0.


  1. Главная ссылка к новости (https://www.nntp.perl.org/grou...)
  2. OpenNews: Доступен язык программирования Perl 5.40.0
  3. OpenNews: Переполнение буфера в Perl, связанное с обработкой символов
  4. OpenNews: Уязвимость в Perl-модуле Spreadsheet::ParseExcel, используемая для компрометации Barracuda ESG
  5. OpenNews: Доступен язык программирования Perl 5.38.0 с поддержкой классов
  6. OpenNews: Релиз компилятора Rakudo 2023.04 для языка программирования Raku (бывший Perl 6)
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/63519-perl
Ключевые слова: perl
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (198) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.13, wd (?), 01:05, 04/07/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +7 +/
    где-то в обломках 20+летней давности:

    sub all{@_==grep$_,@_}
    sub one{1==grep$_,@_}
    sub none{!grep$_,@_}
    sub any{!&none}

     
     
  • 2.29, Аноним (29), 08:17, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    WhiteDragon,ты? Нашёл твой qxp.pm недавно. ;)

    Ты где сейчас работаешь?

     
     
  • 3.42, wd (?), 10:00, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +5 +/
    миац местный админю
    а с кем имею честь?
     
     
  • 4.116, Аноним (116), 15:08, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Да так, аноним обычный :), просто вспомнил тебя из IRC.
     
     
  • 5.138, wd (?), 17:40, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    ну на #perl я по прежнему болтаюсь
     
  • 2.38, Жироватт (ok), 08:56, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ну таки да. Почему бы и не засунуть на уровень языка действительно полезные макросы? (Да знаю я, что это процедуры, но фактически такие однострочники можно считать другой формой записи макросов, если это не обёртка)
     
     
  • 3.45, wd (?), 10:05, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    если мне склероз не изменяет, я их себе слепил увидев их в perl6, когда он только только
    и вроде бы я ниразу ими не воспользовался :)
    но то, что это засунут прямо в язык - это хорошо
    засунули бы еще бы чтото в духе:

    sub find(&@){no strict 'refs';local(*{(caller).'::a'})=\(my$a=$_[1]);&{$_[0]}||($a=$_)for(@_[2..$#_]);$a}
    sub first(&@){$_[0]->()&&return$_ for@_[1..$#_]}

     
     
  • 4.72, Аноним (-), 12:40, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +8 +/
    Шикарный синтаксис!
    Прям все просто, понятно и совсем нет лишних закорючек.
    И эти люди гонят на другие языки...
     
     
  • 5.112, Аноним (112), 14:23, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >Шикарный синтаксис!

    Как всегда, местные ыксперыды ничего кроме синтаксиса не видят. А я скажу, что самое плохое тут не синтаксис, а семантика. Хотя я не знаю перла, но определённые места выглядят явно подозрительно.
    >no strict 'refs';

    Тормоза придумали трусы.
    >local(*{(caller).'::a'})=

    Удачи в IDE воспользоваться поиском по коду.
    >$_[1]

    Экономия на аргументах в ущерб читаемости. Опять же, удачи в статическом анализе. Анонимных кортежей крайне желательно избегать, особенно если у элементов одинаковый тип. Иначе понять, что где лежит - не получится.

     
     
  • 6.134, wd (?), 17:27, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    gt оверквотинг удален если видишь no strict refs значит до закрывающей блок ... большой текст свёрнут, показать
     
  • 6.184, YetAnotherOnanym (ok), 10:10, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >> $_[1]
    > Экономия на аргументах в ущерб читаемости

    Кагбэ, для перловщика $_ - это один из краеугольных камней, поэтому никаких проблем с читаемостью "$_[1]" в принципе быть не может.

     
     
  • 7.214, Аноним (112), 22:47, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >поэтому никаких проблем с читаемостью "$_[1]" в принципе быть не может.

    Что это такое? Сколько всего аргументов? Какого они типа?

     
     
  • 8.218, YetAnotherOnanym (ok), 09:03, 06/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    https perldoc perl org variables Просвещайся ... текст свёрнут, показать
     
     
  • 9.243, Аноним (112), 09:42, 07/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Короче - никакого В перл типизации нет ... текст свёрнут, показать
     
     
  • 10.244, YetAnotherOnanym (ok), 09:59, 07/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Правильнее - не никакого , а любого А так - да, поздравляю Ты заметил, что ... текст свёрнут, показать
     
  • 5.165, Кошкажена (?), 23:48, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Шикарный синтаксис!
    > Прям все просто, понятно и совсем нет лишних закорючек.
    > И эти люди гонят на другие языки...

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

     
  • 5.242, Vivaswat (?), 09:16, 07/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    В синтаксисе вся суть верблюда...
     
  • 4.73, Аноним (73), 12:41, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > sub find(&@){no strict 'refs';local(*{(caller).'::a'})=\(my$a=$_[1]);&{$_[0]}||>>($a=$_)for(@_[2..$#_]);$a}
    > sub first(&@){$_[0]->()&&return$_ for@_[1..$#_]}

    У кого более забористый синтаксис: Rust или Perl?

     
     
  • 5.76, Аноним (-), 12:56, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +4 +/
    > У кого более забористый синтаксис: Rust или Perl?

    Перл побеждает с большим отрывом.
    Синтаксису раста до него еще деградировать и деградировать...

     
     
  • 6.80, АнонимЯ (?), 13:11, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Это лаконичнов. Вам не понять.
     
     
  • 7.85, Аноним (85), 13:32, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А, что тут непонятного?... Лаконичность ценой доп.рисков ошибок и нечитабельности другими, плохой читабельности другими хорошо знающими язык, как и ухудшением своей вычитки. Зато код чуть лаконичней...
     
     
  • 8.101, АнонимЯ (?), 13:53, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Как это доказать в логике или цифрах ... текст свёрнут, показать
     
     
  • 9.178, нейм (?), 08:26, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    очевидно написать максимально близкую реализацию одной и той же задачи на трех я... текст свёрнут, показать
     
     
  • 10.260, nuclight (??), 23:15, 08/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А смысл С любым языком, который фокус-группа не знает, очевидно будут ошибки Б... текст свёрнут, показать
     
  • 8.117, Аноним (117), 15:33, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Вы с другой стороны посмотрите, что бы наделать ошибок надо сперва хорошо по гра... текст свёрнут, показать
     
     
  • 9.135, wd (?), 17:28, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    я не, я не бросил, для меня перл - основной инструмент... текст свёрнут, показать
     
  • 5.81, wd (?), 13:15, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    у APL
    у перла же TMTOWTDI
    perlstyle гласит Just because you CAN do something a particular way doesn't mean that you SHOULD do it that way. Perl is designed to give you several ways to do anything, so consider picking the most readable one.

    в моем случае я такие однострочники шлепал просто в формате перочинного ножа, чтобы были под руками
    не нужно понимать что в них написано, считайте, что это уже компиленный бинарь

     
  • 5.105, Аноним (105), 13:57, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Самое забавное, что это как раз логичный и читаемый синтаксис, в отличие от раста.
     
     
  • 6.106, Аноним (-), 14:14, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Самое забавное, что это как раз логичный и читаемый синтаксис, в отличие от раста.

    Да-да, $#_ очень логично и очень читабельно)) Прям совсем не writeonly йезычог.
    Не зря попурность перла настолько упала.

     
     
  • 7.114, Аноним (105), 14:28, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    $#_ максимально читаемо, кроме шуток. В расте ты бросив один взгляд на код, не сможешь понять, что он делает.
     
  • 7.124, freehck (ok), 16:11, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >> Самое забавное, что это как раз логичный и читаемый синтаксис, в отличие от раста.
    > Да-да, $#_ очень логично и очень читабельно))

    Ну вообще-то да, читабельно. Нужно только мыслить в логике Perl.

    Смотри, значит, как это работает:
    - всё, что начинается на @ -- это массив
    - всё, что начинается на $ -- это скаляр
    - @_ -- это массив, который содержит все переданные в функцию аргументы
    - $#_ -- это скаляр, который содержит индекс последнего элемента массива @_
    - $_[$i] -- это скаляр, который возвращает $i-й элемент массива @_

    Таким образом, получаем вполне читаемый синтаксис:




    sub print_args {
      for (my $i = 0; $i <= $#_ ; $i++) {
        print "$_[$i]\n";
      }
    }



     
     
  • 8.126, Анонусс (-), 16:24, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Допустим логично Как это следует из предыдущих утверждений ... текст свёрнут, показать
     
     
  • 9.130, Аноним (112), 17:11, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Вам плохо объясняют Переменные в перле содержит сигил и имя Сигил - это старнн... большой текст свёрнут, показать
     
     
  • 10.133, Сталин (?), 17:20, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    C 5 36 параметрам функций можно давать человеческие имена, а не распаковывать их... текст свёрнут, показать
     
     
  • 11.212, freehck (ok), 22:19, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Вряд ли перловики прям в диком восторге от этого Для понимания Раньше писали в... текст свёрнут, показать
     
     
  • 12.253, Прохожий (??), 09:41, 08/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Из подобных улучшайзингов и складывается мнение о языке Чем их больше, тем лучш... текст свёрнут, показать
     
     
  • 13.263, nuclight (??), 23:26, 08/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Вообще-то это не костыль, а часть философии - функция может получить произвольно... текст свёрнут, показать
     
  • 10.262, nuclight (??), 23:19, 08/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ну вообще-то нет Они на единицу отличаются - нумерация индексов-то с нуля ... текст свёрнут, показать
     
  • 9.139, Аноним (105), 17:48, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    В баше что-то похожее, вроде ни разу проблем не возникало Ты просто знаешь, как... текст свёрнут, показать
     
  • 9.261, nuclight (??), 23:17, 08/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Оно и не должно никак следовать Это еще одно определение просто ... текст свёрнут, показать
     
  • 8.146, Someone (??), 19:52, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    И как мне теперь ЭТО развидеть ... текст свёрнут, показать
     
  • 7.163, вымя (?), 23:07, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    $#_ как раз самое простое. А вот что такое ||>>? Как это вообще гуглить? У хаскелистов это хотя бы функцией было бы, которую можно в Hoogle поискать.
     
     
  • 8.168, Аноним (105), 00:51, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Чатгпт уже придумали, не тормози ... текст свёрнут, показать
     
     
  • 9.181, вымя (?), 08:58, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Спасибо, опять убедился в полной беспомощности нейробалаболов И потом ещё неско... большой текст свёрнут, показать
     
     
  • 10.193, Аноним (105), 11:15, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    У тебя какой-то странный чатгпт Yes 8211 it really is valid Perl though, I ... большой текст свёрнут, показать
     
  • 8.264, nuclight (??), 23:29, 08/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Автор этого фрагмента - известный в перловых кругах велосипедист, так что в норм... текст свёрнут, показать
     
  • 5.119, Аноним (119), 15:48, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > У кого более забористый синтаксис: Rust или Perl?

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

     
  • 4.88, Аноним (88), 13:37, 04/07/2025 Скрыто ботом-модератором     [к модератору]
  • +1 +/
     
  • 4.122, Аноним (-), 16:01, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >sub find(&@){no strict 'refs';local(*{(caller).'::a'})=\(my$a=$_[1]);&{$_[0]}||>($a=$_)for(@_[2..$#_]);$a}
    >sub first(&@){$_[0]->()&&return$_ for@_[1..$#_]}

    Хитрожопый ты наш, ты же специально написал однострочники. Такие примеры ради лулзов прведены на Лурке. На самом деле, по-читаемости, синтаксис Перла намного лучше чем у Раста.

     
     
  • 5.125, Анонусс (-), 16:22, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > На самом деле, по-читаемости, синтаксис Перла намного лучше чем у Раста.

    Ахаха. Ну да, ну да.
    И это раст ругают за закорючки. Хоть в перловке почти весь код закорючки.

     
  • 5.136, wd (?), 17:37, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    не, я это для себя писал - просто перочинный ножик, это было задолго до того пат... большой текст свёрнут, показать
     
  • 4.128, Аноним (128), 16:42, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Мне на собеседовании подсунули похожую мутатень, типа, где ошибка?
    С просил:
    - Это у вас так пишут?
    - Да. Это наш код. (С гордостью)
    - Прощайте.
     
     
  • 5.137, wd (?), 17:40, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Мне на собеседовании подсунули похожую мутатень, типа, где ошибка?
    > С просил:
    > - Это у вас так пишут?
    > - Да. Это наш код. (С гордостью)
    > - Прощайте.

    ну в продакшн такое пихать конечно не стоит, но как тест на скиловость, почему бы и да
    опятьже если это основной код, если это какаято либа, лезть в которую не стоит - ну и хрен бы с ней
    просто это низкоуровневый перл (кстати еще далеко не сильно низкоуровневый, можно закопаться глубже)

     
     
  • 6.154, Аноним (119), 20:35, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > но как тест на скиловость, почему бы и да

    И какой смысл в таком тесте? Нанимая перловика, прежде всего нужно убедиться что он так писать ни при каких обстоятельствах не будет.

    > лезть в которую не стоит - ну и хрен бы с ней

    Ха-ха, это прям определение любого кода не перле.

     
     
  • 7.169, wd (?), 01:04, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    ну не знаю, меня такой код не пугает
    я могу писать как обслуживаемый код, так и не обслуживаемый
    в частности я могу лютую дичь писать просто для себя, как художник
    на полном серьезе у меня есть проэкты в которых всеравно никого никогда не будет и я просто отвожу душу: я пишу так, как писать ненадо
     
     
  • 8.254, Прохожий (??), 09:47, 08/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Это потому, что вы - вменяемый, поэтому для прода писать необслуживаемый код не ... текст свёрнут, показать
     
     
  • 9.256, wd (?), 10:18, 08/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    ну это уже переход на личности в былые времена на perl спокойно развлекались и ... текст свёрнут, показать
     
  • 2.118, Аноним (119), 15:45, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Какой же всё-таки выразительный, и при этом отвратный язык. Я очень рад что прошел в юности (в нулевых) через коммерческую разработку на нём, это много дало в понимании того как не надо делать. Единственная моя ошибка с этим связанная после - я потом (в десятых, уже в нормальной компании) вызвался переписывать легаси с перла (потому что был один из немногих в компании кто этот перл ещё помнил). Вот это конечно был ад, израиль и выгорание. Надо было сказать что никакого перла я уже не помню, и ищите любых оставшихся в конторе причастных к тому что это было допущено в прод, и пусть они сами переписывают как хотят.
     
     
  • 3.166, Кошкажена (?), 23:50, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Вот это конечно был ад, израиль и выгорание.

    Сейчас тебе любой ИИ это сделает без проблем.

     

     ....большая нить свёрнута, показать (58)

  • 1.16, Аноним (16), 01:17, 04/07/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Год 2025й от рождества христова, кодеры всё ещё не определились с кодировками файлов. Когда определятся, там уже и о строках подумать можно будет.

    Впрочем, booking.com наглядно показал, что язык реализации — десятое дело для любого коммерчески успешного проекта. Жаль, до кодеров это дойдёт приблизительно никогда.

     
     
  • 2.47, Соль земли2 (?), 10:11, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Может я хочу файл с кодом сразу в нескольких кодировках CP1251/KOI8-R/UTF-8. Технически это возможно. Но нужно научить интерпретатор определять их на ходу.
     
     
  • 3.70, Аноним (-), 12:14, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Технически это возможно.

    Возможно, но зачем?
    Для чего вообще такое может понадобится? Какой реальный сценарий?

     
  • 3.129, Аноним (16), 17:00, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Может я хочу файл с кодом сразу в нескольких кодировках

    Я про продакшен, а не про локалхост очередного Тэрри Дэвиса.

     
  • 3.170, wd (?), 01:06, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    use Encoding ?
    не пробовал на лету менять ничего конечно, я, если за пределы ascii выхожу, то это utf8, соответсвенно у меня только use utf8 и все
     
  • 2.120, Аноним (119), 16:00, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ну ничего себе Как раз наоборот - они сейчас тратят деньги и время чтобы перепи... большой текст свёрнут, показать
     
     
  • 3.131, Аноним (16), 17:13, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Именно так. Главное, что проект коммерчески успешен, благодаря чему у компании есть деньги для любых переписываний на любых языках. В отличие от всего того, что не взлетело, хоть и было написано на самом правильном языке с самой правильной архитектурой. А секрет прост: людям надо решение их проблем, такое, чтобы было дешевле заплатить за него, чем мучаться самому. Как ни крути, язык программирования на успех если и влияет, то весьма опосредованно.

    > не могу сказать что он загублен прям таки языком, но загублен некомпетентным коммерческим и техническим руководством

    Начал с хорошего понимания сути проблемы…

    > только такое Perl для прода и могло выбрать)

    Но не удержался и скатился до ad hominem. Почему? Ну про это классики психологии много писали, повторяться не буду.

     
     
  • 4.151, Аноним (119), 20:22, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Именно так. Главное, что проект коммерчески успешен, благодаря чему у компании есть деньги для любых переписываний на любых языках

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

     
     
  • 5.189, YetAnotherOnanym (ok), 10:52, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > На пустопорожнее переписывание денег никто и никогда не даст

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

    В эту фразу носом бы тыкать также ещё фанатов питона и прочих "удобных для быстрой разработки" интерпретируемых языков.

     
     
  • 6.216, Аноним (216), 05:23, 06/07/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > В эту фразу носом бы тыкать также ещё фанатов питона и прочих "удобных для быстрой разработки" интерпретируемых языков.

    Ещё один сильный задним числом. Пока ты делаешь правильно с первого раза, иные успевают по пять разных идей накидать на чём быстрее, увидеть, что они не работают, и двинуться дальше. А если взлетит, то будет денежка нанять такого вот как ты на зарплатку переписывать на расте или на чём ты там дока.

     
     
  • 7.219, YetAnotherOnanym (ok), 09:08, 06/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ещё один быстронакидыватель стриггерился.
    Не будет денежки никого нанимать, потому что все пять идей будут похоронены тормозами и жором ресурсов в продакшоне.
     
     
  • 8.235, Аноним (16), 20:59, 06/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Точно Никому не известный мёртвый проект Facebook был написан на PHP И не взле... текст свёрнут, показать
     
     
  • 9.238, YetAnotherOnanym (ok), 21:43, 06/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А ничо, что ФБ свой пхп запилил, имменно потому что тот, которы был, их не устра... текст свёрнут, показать
     
     
  • 10.249, анонимус (??), 21:07, 07/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А ничо что ФБ свой пхп запилил именно потому что у него уже были на это деньги ... текст свёрнут, показать
     
     
  • 11.251, YetAnotherOnanym (ok), 07:27, 08/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Инвестиции Нет, не слышал ... текст свёрнут, показать
     
  • 5.215, Аноним (216), 05:20, 06/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Чтобы знать, что решение не тянет миллион пользователей в пикосекунду надо сперва найти столько пользователей. Задним числом все умные, но тебя там, где решения принимались не было. И быть не могло.
     
     
  • 6.220, YetAnotherOnanym (ok), 09:27, 06/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    То есть, твои проекты рассчитаны на тебя, любимого и ещё полтора васяна. Ок.
     
     
  • 7.236, Аноним (16), 21:02, 06/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Я вижу, что ты и программы на идеальных языках писать мастер, и архитектор не слабый, да и в бизнесе человек не последний. Ок.
     
  • 3.222, freehck (ok), 11:13, 06/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Потом, количество коммерчески успешных проектов как раз прекрасно показывает годится язык для прода или нет.

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

    > не могу сказать что он загублен прям таки языком, но загублен некомпетентным коммерческим и техническим руководством

    95% проектов погибают именно по этой причине

     
     
  • 4.266, nuclight (??), 23:41, 08/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Не будет, и Пол Грэм в свое время отлично это описал - они смотрели, кого нанимают конкурирующие стартапы. Если это были мейнстримные языки типа Java или шарпов - можно было не беспокоиться о конкуренции совершенно.
     
  • 2.259, Аноним (259), 12:10, 08/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Год 2025й от рождества христова, кодеры всё ещё не определились с кодировками файлов.

    W3C определил для всех UTF-8.

    > Когда определятся, там уже и о строках подумать можно будет.

    А что о них думать? Кодировка текстовых файлов - это и есть кодировка строк, в нём содержащихся.

     
  • 2.265, nuclight (??), 23:37, 08/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Неа, он наглядно показывает разницу- на чем _новые_ коммерчески успешные проекты *взлетают* и на чем потом неповоротливые корпорации, зараженные менеджерами в -цать слоев иерархии, тормозят и нанимают идиотов, чтобы побольше (потому что у менеджера зарплата от числа людей в подчинении).
    Иными словами, на Перле взлетел успешный стартап Букинг, смогший конкурировать с тогдашними неповоротливыми корпорациями именно за счет языка, позволявшего делать быстро. Когда он сам стал неповоротливой корпорацией, зачем ему теперь инструмент для победы стартапов? Тут теперь совсем другие интересы внутри.
     

  • 1.21, Самый Лучший Гусь (?), 01:30, 04/07/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Интересный язык с сомобытными идеями который к сожалению уже уходит в разряд ретро

    Сейчас его место занимает python 3

     
     
  • 2.32, Аноним (32), 08:31, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Nim
     
     
  • 3.44, Кошкажена (?), 10:04, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ну да, они новую версию пилят, снова все ломая.
     
  • 3.152, Аноним (119), 20:26, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Nim (zig, hare и т.д.) это игрульки отдельных разработчиков, без библиотек, сообщества и цели. Прод на них не будут писать никогда.
     
     
  • 4.167, Кошкажена (?), 23:51, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Прод на них не будут писать никогда

    Ну на zig есть bun и tigerbeetle, притом второй вроде как в проде.

     
  • 4.179, Аноним (32), 08:47, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Обчитался нейросетей?

    Держи, бесплатно:

    https://github.com/search?q=language%3ANim&type=Repositories&ref=advsearc

    https://github.com/ringabout/awesome-nim

     
  • 2.48, Аноним (48), 10:17, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Могу ошибаться, то Питон занял место не своё и фронтенд и бекенд. Везде один Питон.
     
     
  • 3.50, Аноним (50), 10:39, 04/07/2025 Скрыто ботом-модератором     [к модератору]
  • –1 +/
     
     
  • 4.54, Аноним (48), 10:59, 04/07/2025 Скрыто ботом-модератором     [к модератору]
  • –3 +/
     
  • 3.107, anonymos (?), 14:15, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    class Test:
        x = 0

        def clsx(self):
            Test.x += 1

        def objx(self):
            self.x += 2

    ax = Test()
    bx = Test()

    ax.clsx()
    ax.objx()

    print("ax.x =", ax.x, "<= значение явно не корректное")
    print("bx.x =", bx.x)

     
     
  • 4.267, nuclight (??), 23:44, 08/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Скопипастил этот код, и...

    >>>     def clsx(self):

      File "<stdin>", line 1
        def clsx(self):
        ^
    IndentationError: unexpected indent
    >>>         Test.x += 1

      File "<stdin>", line 1
        Test.x += 1
        ^
    IndentationError: unexpected indent

    вот и весь ваш путон

     
  • 2.113, Аноним (112), 14:26, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • –3 +/
    >который к сожалению уже уходит в разряд ретро

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

     
     
  • 3.268, nuclight (??), 23:45, 08/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Очередная секта свидетелей статической типизации, далекая от реального мира.
     
  • 2.121, Аноним (119), 16:01, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Интересный язык с сомобытными идеями который к сожалению уже уходит в разряд ретро

    Почему к сожалению? Это эзотерический язык программирование, только сомам на нём и писать, людям не надо.

     
  • 2.127, Анонусс (-), 16:27, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > сомобытные идеи

    это уже что-то из сленга рыбаков?

    > который к сожалению уже уходит в разряд ретро

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

     
  • 2.191, YetAnotherOnanym (ok), 11:03, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Сейчас его место занимает python 3

    * Представил себе SpamAssassin на python3 *

     
     
  • 3.231, Аноним (231), 14:40, 06/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Выкини уже этот кусок легаси. Десять лет как rspamd есть, на православной сишечке.
     

  • 1.23, Аноним (23), 06:11, 04/07/2025 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +/
     

  • 1.24, user90 (?), 07:03, 04/07/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    Господа забывают, что такое Perl. А это Practical Extraction and Report Language, и в этой области он по прежнему лучший!
     
     
  • 2.26, Аноним (26), 07:19, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    А это уже область ИИ-агентов. Попробуй скормить данные Grok'у, тебе понравится.
     
     
  • 3.30, Аноним (29), 08:18, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Гроку 10гб не скормить. Ему не понравится.
     
     
  • 4.43, _kp (ok), 10:02, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Когда то и компы были гигантские, выделенную подстанцию требовали. И с 640кб были.
    Будет подобное и локально.
     
  • 4.143, Аноним (26), 19:42, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Лоh и в африке лоh. Вместо того чтобы использовать возможность, вечно ищет оправдания для ничего неделания.
     
  • 3.36, Жироватт (ok), 08:54, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Который настолько ЭТИЧЕН, что откажется обрабатывать любые, не утверждённые генеральной линии штатовских партий, данные?
    Или который, в отличие от тупого скрипта, любит, умеет и практикует галлюцинации?

    Не, пасиб.

     
     
  • 4.132, Аноним (16), 17:16, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ну пользуйся гомоморфным шифрованием, если боишься что тебе за данные Обама в подъезде лампочки снова бить начнёт.
     
     
  • 5.140, Аноним (112), 18:36, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Это не поможет. Нужна модель без цензуры, а не просто канал для передачи данных.
     
     
  • 6.217, Аноним (216), 05:24, 06/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А чего не сделаешь раз нужна?
     
  • 5.144, Dzen Python (ok), 19:49, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Что поделать - *правильно* обученный, на *правильном* датасете *правильных* данных ИИ-агент в отличие от мифического "Обама-в-парадной" уже существует и уже *правильно* толкует индусам в этих ваших твиттерах новости
     
  • 2.28, Аноним (28), 08:15, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Поэтому, ненужно его пихать в другие области.
     
     
  • 3.31, user90 (?), 08:24, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Но "все — текст" ;)
     
     
  • 4.74, Аноним (73), 12:44, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Регекспы уже давно есть во всех языках.
     
     
  • 5.233, Аноним (231), 14:44, 06/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Регекспы уже давно есть во всех языках.

    Ну для обработки текста регекспами он до сих пор сильно удобнее других вариантов.

    Другое дело, что так и остался неудобнее во всём остальном.

     
  • 2.123, Аноним (119), 16:02, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Да нет конечно. Нет в нём ничего специфического ни про extraction, ни про report. Регулярки  и принты есть в любом ЯП, и пользоваться ими проще.
     
     
  • 3.269, nuclight (??), 23:46, 08/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Щас бы это делать на любом другом языке, где как минимум регулярки еще эскейпить придется. "Проще", my ass.
     
  • 2.190, YetAnotherOnanym (ok), 10:55, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > это Practical Extraction and Report Language

    Это Pathologically Eclectic Rubbish Lister.

     

  • 1.46, Кошкажена (?), 10:05, 04/07/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    class Point {
           field $x :reader :writer :param;
           field $y :reader :writer :param;
       }
       my $p = Point->new( x => 20, y => 40 );

    А с каких пор в перле классы были? Мне с пеной у рта доказывали местные экперты, что "не нужно", есть bless!!

     
     
  • 2.60, 1 (??), 11:33, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > А с каких пор в перле классы были?

    Дык с 5ки и начались ...
    Посмотри на любой модуль - можно как класс использовать, можно вызовом функций.

     
  • 2.71, wd (?), 12:22, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    прямо вот class завезли относительно недавно
    нафига он нужен - я не понимаю
    bless же есть
     
     
  • 3.115, Кошкажена (?), 14:30, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > прямо вот class завезли относительно недавно
    > нафига он нужен - я не понимаю
    > bless же есть

    Ну видмо все устали делать вид и завезли привычный синтаксис?

     
     
  • 4.173, wd (?), 01:12, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    которым никто не пользуется всеравно :)
    откровенно говоря, я досихпор пишу так, что большая часть кода будет работать и на 5.6
    хотя use v5.12 или use v5.14 у меня давно в порядке вещей
    в первую очередь оно включает стрикт, во вторую - дает say, который я всеравно кроме как в perl -E не пользую, ну и наверное силу земли
     
  • 2.175, wd (?), 05:28, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    http://paste.org.ru/?v6edyr
    вот, я таки это нашел
    вообще это лет 20 назад, мне, с пеной у рта, доказывали, что перл - говно, потому, что в нем нет классов
    я породил это
     
     
  • 3.188, Кошкажена (?), 10:40, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > http://paste.org.ru/?v6edyr
    > вот, я таки это нашел
    > вообще это лет 20 назад, мне, с пеной у рта, доказывали, что
    > перл - говно, потому, что в нем нет классов
    > я породил это

    Ужос. Особенно   sub import{no strict 'refs';do{*{caller(0)."::$_"}=${"$_[0]::"}{$_}} for keys%{"$_[0]::"}}


     
     
  • 4.198, wd (?), 13:31, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    да чтож вас всех этот импорт так парит
    ну это так и должно быть, ну откройте вы Export.pm и гляньте на его импорт - там ровно тоже самое будет
     
     
  • 5.250, Кошкажена (?), 23:35, 07/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > да чтож вас всех этот импорт так парит

    Потому что писать нечитабельные писмена в одну строку для простой задачи и при этом порицать нормальный синтаксис - странно. Как минимум, вижу тут нежелание выбрасывать свой любимый (хоть и корявый) велосипед.

     
     
  • 6.252, wd (?), 09:01, 08/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    я не порицаю, я же сам тут цитировал perlstyle, где говорится, что не надо писать вот так вот, просто потому, что можешь, писать нужно максимально читабельно
    этот пример я сделал просто чтобы показать концепт классов, собственно если все это распихать по файлам, и импорт этот из однострочника превратить в то, что в экспортере - будет не так страшно
    просто я тогда далеко ходить не стал, просто всковырнул его из одного из своих перочинных кодов, где у меня просто навалены однострочные функции, которые я могу по быстрому вбросить
    это все рисовалось для себя и не подразумевало, что один мутант свалит в японию и начнет это мое безобразие использовать там в продакшне... ну японцы к закорючкам привыкшие, им, видимо, норм
     
  • 3.223, freehck (ok), 11:38, 06/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > http://paste.org.ru/?v6edyr

    Слушай, а прикольно. То есть на базе экземплярной модели ООП вполне можно породить классовую, причём всего в несколько строчек. Круто. =)

     
  • 2.207, Аноним (207), 20:05, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Всё правильно, есть bless :) Который, к слову, позволяет даже сменить тип у переменной!! Понятно, что это такая маленькая грабля, но иногда удобна.
     
     
  • 3.241, wd (?), 09:04, 07/07/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    дадада, я развлекался так usr bin perl -w use Qt use Qtx qw QApplication QM... большой текст свёрнут, показать
     
     
  • 4.272, nuclight (??), 00:00, 09/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Нет бы взять Tcl/Tk, то есть use Tkx; на перле переделать во что-то такое...
     
     
  • 5.276, wd (?), 02:12, 09/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Нет бы взять Tcl/Tk, то есть use Tkx; на перле переделать во
    > что-то такое...

    я брал, я игрался и с Tk и с Gtk, с последним даже очень плотно поработал
    это же просто занимася ерундой, именно что qt4 пощупать пощупал
    ну и да, я и по человечески его делал, как это делается на сях, ну только на перле
    ну вот просто скучно было и я выкрутил его в такую дичь

    просто мальчику было скучно, мальчик ковырял в носу

     
  • 2.270, nuclight (??), 23:47, 08/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Это перловый коре тим так пытается в маркетинг "смотрите, у нас тоже есть!" вместо решения действительно важных проблем. А так действительно не нужно.
     

  • 1.49, Аноним (48), 10:23, 04/07/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Сабж сложен в изучении?
    Много вакансий на сабже?
    Сколько платят за знание сабжа?
     
     
  • 2.51, Аноним (50), 10:41, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    В Перле сложно примерно ВСЁ. :) Но при этом это по-прежнему язык, кратно лучший похапэхи.
     
     
  • 3.62, 1 (??), 11:37, 04/07/2025 Скрыто ботом-модератором     [к модератору]
  • +1 +/
     
  • 3.75, Аноним (73), 12:48, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    При том, что, как и в Похапехе, в глазах пестрит от этих $.
    Вот если бы з/п перлопргера так пестрела этими значками, то тогда можно было бы мириться.
     
     
  • 4.199, Аноним (207), 19:47, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    В этом и была задумка! Доллар чётко даёт понять, что именно у тебя в руках и никогда не даст  спутать с функцией, строкой, нэймспэйсом и т.п. Не даром даже есть ВЕНГЕРСКАЯ НОТАЦИЯ, что приходится для большей строгости прибавлять к имени приставки.
    И надо заметить, Перл рождался на чёрно-зелёных мониторах, никакой подсветки синтаксиса тогда не было вообще! (или на распечатке) Так что доллар был вполне разумным решением.
     
     
  • 5.226, Аноним (226), 12:13, 06/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Но ныне мониторы у нас не чёрно-зелёные.
     
  • 3.103, Аноним (103), 13:55, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Не сложнее, чем делать сайты на ассемблере.
     
     
  • 4.171, Аноним (171), 01:06, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    У сайтов на ассемблере, кстати, есть одно преимущество - их пишут под одну архитектуру(целевая у сервера), в отличии от всякого прикладного, где несколько ос, и кроме х86 могут быть армы какие нибудь.
    Ну и про производительность не стоит забывать.
     
     
  • 5.227, Аноним (226), 12:15, 06/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >У сайтов на ассемблере, кстати, есть одно преимущество - их пишут под одну архитектуру

    Вы считаете это преимуществом?

     
  • 2.52, Аноним (52), 10:43, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Обычно при выборе ЯП я оплату ставил на последнее место.
    Например, мне тошнит php и нравится rust
     
     
  • 3.53, Аноним (48), 10:58, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Ну я вообще мало знаю любителей PHP. Но Rust не фанат, мне всё что содержит в названии C нравится: СИ, С++, С#, 1C.
     
     
  • 4.63, 1 (??), 11:39, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > не всё что содержит в названии C нравится: СИ, С++, С#, 1C.

    Поржал, спасибо ! Только COBOL забыл :-).

     
     
  • 5.68, Аноним (48), 11:53, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Не, ну если первые два учил во времена учёбы, потом решил, вот недавно начал интересоваться 1С.
     
  • 5.69, Аноним (48), 11:55, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Слышал про Соболь, но никогда не интересовался, видимо не очень распространённый.
     
  • 4.147, Илья (??), 19:54, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >С#

    Лучшее, что сейчас есть на рынке

     
     
  • 5.200, Аноним (207), 19:49, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Тс-с-с! Не пали контору :) А то понабежит 3умеров кодить за доширак - хрен потом прорвёшься!

    (сишарплю 20 лет и это прекрасно!) Но хотелось бы чего-то уровня Немерле.

     
  • 4.177, wd (?), 06:01, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    про 1с это хорошо... вспомнил и нарыл пару зарисовок:

    #!/usr/bin/perl
    use feature 'say';
    use utf8;
    sub один(){1}
    sub два(){2}
    sub сказать{say @_}
    sub если(&@){my %if=(if=>@_);if($if{if}->()){$if{then}->()}else{$if{else} && $if{else}->()}}
    sub то(&@){then=>@_}
    sub иначе(&){else=>@_}

    #сказать "1с ничто - перл все";

    если { один == 2 } то { сказать ага } иначе { сказать неа };
    если { один == 1 } то { сказать угу };
    если { два == 1 } то { сказать ога };

    ------------
    #!/usr/bin/perl
    use utf8;
    sub функа(&$){*{$_[1]}=$_[0]}
    sub называется($){$_[0]}


    функа {print @_} называется тест;

    тест(123);

     
  • 4.201, Аноним (207), 19:50, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Забыл С-- - тоже интересная вещь
     
  • 2.58, аролп5 (?), 11:14, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Идём на hh и смотрим. 80+ вакансий и ЗП 200к+. Поэтому пока лучше учить java/kotlin
     
     
  • 3.78, Аноним (78), 13:02, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А что лучше, Java или 1с?
     
     
  • 4.230, Аноним (226), 14:06, 06/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    1С сильно нишевый. За пределами экосистемы 1C никому не нужен.
     
  • 3.82, wd (?), 13:22, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    а вы не задумывались, почему их так много и висят они годами?
     
     
  • 4.162, 12yoexpert (ok), 23:04, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    рожай уже свою глубокую мысль
     
  • 4.176, woof (?), 05:53, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    "Почему долго висят" - потому что в нашей стране очень мало сильных специалистов
    "Почему их так много" - потому что они востребованы
     
     
  • 5.180, 12yoexpert (ok), 08:52, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    80+ вакансий это много?
    а то, что они висят годами, говорит только о том, что это мёртвый язык, и кончишь ты преподом в российском универе
     
     
  • 6.187, Кошкажена (?), 10:39, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > преподом в российском универе

    Зато можно работать до глубокой старости.

     
     
  • 7.234, Аноним (231), 14:49, 06/07/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >> преподом в российском универе
    > Зато можно работать до глубокой старости.

    Точнее, пока лавочку не прикрыли.

     
  • 7.237, Аноним (16), 21:07, 06/07/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > Зато можно работать до глубокой старости.

    Можно. Но еда кончится быстрее.

     
     
  • 8.248, Кошкажена (?), 12:25, 07/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Зато на помойке истории, на которую выкинут, из-за того, что ты просто стар ед... текст свёрнут, показать
     
  • 5.225, freehck (ok), 11:43, 06/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > "Почему долго висят" - потому что в нашей стране очень мало сильных специалистов

    Откуда тут приписка "в нашей стране"? В нашей стране много сильных специалистов. Другое дело, что сильных специалистов в целом по миру -- мало, и они все задействованы на постоянной основе.

    PS: ну и плюс к тому, 200к -- это мало для сильного специалиста.

     
  • 3.203, Аноним (207), 19:54, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Где логическая цепочка между 200К и "поэтому java"?? Я что-то вообще логику не секу.
     
  • 2.83, wd (?), 13:24, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    его нельзя изучать, перлом нужно проникнуться, нужно научиться думать на перле, разговаривать на перле
     
     
  • 3.111, Аноним (-), 14:18, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > перлом нужно проникнуться, нужно научиться думать на перле, разговаривать на перле

    А потом любой код на любом языке превращается в программу на перле.
    Остальная команда очень любит таких разработчиков))

     
     
  • 4.204, Аноним (207), 19:55, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Нет никакого "любого языка". Если ты профи на Перле, ты и кодишь в окружении таких же.
     
  • 3.164, вымя (?), 23:23, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > разговаривать на перле

    Напомнило историю про мальчика, который научился ПЮГЦНБЮПХБЮРЭ МЮ KOI-8

     
     
  • 4.206, Аноним (207), 20:01, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Сначала линукс выёживается КОИ8, создавая ДИЧАЙШИЙ баттхёрт у наивных юзеров (т.к. всё равно приходится обмениваться документами с вендузятниками), а потом эти же пингвофилы запиливают IceWM с почти полным копированием Win95 :)))

    Kpeтuн трольвадс вместо КОИ должен был выбрать хотя бы win1251 - как раз чтобы для тру линуксофила переход между обоими мирами был максимально простым. Вместо этого потеряли 20 лет, кучу юзеров и всё равно пришли к UTF8. Браво!

     
     
  • 5.228, Аноним (226), 13:56, 06/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Сначала русские повыёживались, наплодив 100500 кодировок для своего языка. А виноватым почму-то вы назначили Торвальдса. Хотя, ныне гражданину США Л. Торвальдсу вообще фиолетово на русские кодировки, для него ASCII то, что доктор прописал.
     
  • 5.229, Аноним (226), 14:02, 06/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Может по-вашему, ещё Торвальдс должен был выбрать для перевода строки 0x0D 0x0A вместо 0x0A в текстовых файлах?
     
  • 5.245, wd (?), 10:04, 07/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    кои8 был немного раньше чем 1251
    линукс - это просто ядро, ему до кодировок вообще фиолетово
    gnu просто унаследовало все это от юникса, шиндовса в природе тогда небыло
    про то откуда взялся интерфейс винды напоминать надо? там что-то про копировальные аппараты
     
     
  • 6.246, wd (?), 10:07, 07/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    а, и да, еще в 98ом году, гдето там майкрософт орал, что в локальной кодировке можешь писать, а можешь не писать - на выбор, но в юникоде ты писать обязан
    но по прежнему все лепят 1251...
     
  • 5.277, Аноним (277), 02:12, 09/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    В Win95, да и многих других windows - Русские тексты кодируются в ср1251 - Рус... большой текст свёрнут, показать
     
  • 2.84, ptr (ok), 13:31, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Сабж сложен в изучении?

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

    > Много вакансий на сабже?

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

    > Сколько платят за знание сабжа?

    В среденем, явно больше чем за Python или js. Что, собственно говоря, объясняет, почему для новых разработок он не востребован. Стоимость разработки на Perl получается выше, чем на Python или js. А производительность у Perl ниже.

    В некотором смысле, сейчас ситуация с Perl напоминает ситуацию с COBOL и RPG всего лет 20 назад.

     
     
  • 3.89, Аноним (48), 13:38, 04/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    RPG для меня это role play game, ЯП  с таким названием впервые слышу.
     
     
  • 4.172, Аноним (171), 01:10, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Двачую, хотя под РПГ можно было бы понимать Луа какую нибудь, короче всю скриптоту что в игровой индустрии используют.
     
  • 4.196, ptr (ok), 13:05, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    https://ru.wikipedia.org/wiki/RPG_(%D1%8F%D0%B7%D1�

    До сих пор используется. В основном на IBM мэйнфремах и AS/400. Даже в некоторых российских банках.

     
     
  • 5.213, 12yoexpert (ok), 22:23, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > https://ru.wikipedia.org/wiki/RPG_(%D1%8F%D0%B7%D1

    koi8-r или cp1251?

     
     
  • 6.221, ptr (ok), 10:33, 06/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > koi8-r или cp1251?

    UTF-8, но завершающая скобка теряется.

     
  • 3.205, Аноним (207), 19:57, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Очень странно, как разные языки могут "стоить" по-разному! По-моему, в вакансии "стоит" именно сам человек - опыт, скилы, возраст. Опытный перлист стоит десятка зумеров со всех их растами, го и пестонами.
     
     
  • 4.247, Прохожий (??), 11:00, 07/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Rust в большинстве случаев (если не брать во внимание скриптоту) для более-менее сложного ПО будет гораздо лучше Perl, Python, Go. Поэтому вряд ли опытный перлист будет стоить дороже опытного растианина. На всякий случай. Я ни разу не зумер. Мне 50+. Но знаю на хорошем уровне Python, и на начальном уровне Rust и Perl, поэтому, мне кажется, имею право на такое мнение. С Go знаком только по критическим статьям о нём, но мне их хватило, чтобы понять, что этот язык не стоит моего внимания.
     
     
  • 5.273, nuclight (??), 00:02, 09/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Будет банально по той причине, что опытный он в том числе по возрасту, т.к. откуда бы зумер успел стать опытным на перле - а тот получал опыт еще давно.
    Сравнение с растом достаточно странное в контексте Go - что то, что другое суть языки с хайпом.
     
  • 3.271, nuclight (??), 23:55, 08/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Не, не потребуется, достаточно пересборки перла под архитектуры с 64-битным time_t.
     
     
  • 4.275, ptr (ok), 00:49, 09/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Не, не потребуется, достаточно пересборки перла под архитектуры с 64-битным time_t.

    Во-первых, Вы сильно отстали от жизни, так как начиная с Perl 5.12, время в Perl вообще не зависит от time_t, а используется собственная реализация. https://perl5doc.ru/Time::Local
    Во-вторых, проблема тут не столько во внутреннем представлении, а как и с проблемой 2000-го года, в интеграции: бинарных файлах, базах данных, вроде Berkeley DB, сообщениях CORBA и т.п.

     
  • 2.224, freehck (ok), 11:39, 06/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Сабж сложен в изучении?

    Да

    > Много вакансий на сабже?

    Нет

    > Сколько платят за знание сабжа?

    Мало

    Perl -- ну это скорее для души, для кругозора.

     
  • 2.240, iPony128052 (?), 07:02, 07/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Сабж сложен в изучении? Много вакансий на сабже?

    Я изредка пишу на Perl, хотя в вакансии об этом не было ни слова.
    И по проекту это примерно 0.1% кода.

    Не сказал бы, что сложно. Прочитал книгу и в перёд на базовом уровне.

     

     ....большая нить свёрнута, показать (53)

  • 1.142, Аноним (-), 19:40, 04/07/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > При подготовке нового выпуска было изменено около 280 тысяч
    > строк кода (без документации и автоматически сгенерированного
    > кода - 93 тысячи)

    Нет бы написать "При подготовке нового выпуска было изменено около 93 тысяч строк кода (с документацией и бойлерплейтом - 280 тысяч)"

    Но... сам себя не похвалишь - никто не похвалит.

     
     
  • 2.174, Аноним (171), 01:12, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Если это делали мясные мешки - уважение, в наш век ии агентов это уже подвиг.
     
  • 2.202, Аноним (207), 19:52, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Каждый прогер написал около 1.5К кода. Я такое за день интенсивного кодинга выдаю.
     
     
  • 3.239, Аноним (105), 00:46, 07/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    На расте пишешь?
     
     
  • 4.255, Прохожий (??), 09:53, 08/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Вряд ли. Скорее, Питон или Джаваскрипт. Там выдать 1.5 тыс. строк несложно.
     
     
  • 5.257, Аноним (105), 11:02, 08/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Он же сказал "интенсивного", не сходится.
     
     
  • 6.258, Аноним (258), 11:42, 08/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    пыхапыст он, всё сходится.
     

  • 1.182, Аноним (258), 09:23, 05/07/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Зачем пихать в синтаксис то, что могло бы быть библиотекой функций?
     
     
  • 2.183, вымя (?), 10:02, 05/07/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Действительно, конструкции вида sqrt(add(mul(x,x),pow(y,2))) хватит всем!
     
     
  • 3.274, nuclight (??), 00:04, 09/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Только не так, а:

    (sqrt
      (add
        (mul x x)
        (pow y 2)
    ))

    вот тогда хватит всем!

     

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



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

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