The OpenNET Project / Index page

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

Ларри Уолл представил Perl 6.0.0

07.10.2015 10:18

Ларри Уолл (Larry Wall), создатель языка программирования Perl, в своём выступлении в музее Эксплораториум в Сан-Франциско, представил первый тестовый выпуск Perl 6.0.0, пошутив, что теперь основным приоритетом станет исправление ошибок, которые случайно могут быть приняты за новые возможности. Объявляя дату финального релиза, Ларри воспользовался старой шуткой ("Дата релиза давно известна – это канун Рождества, в тайне пока остается только год этого события."), но на этот раз год релиза известен.

Perl 6 развивается более 15 лет, причём из них около 10 лет продолжалось ожидание финального релиза. Язык Perl 6 кардинально отличается от Perl 5 и может рассматриваться как созданный с нуля отдельный язык программирования, обладающий средствами метапрограммирования (возможность определения собственных синтаксических конструкций для расширения языка, в том числе создания новых инфиксных операторов) и встроенными объектно-ориентированными возможностями.

Вместо использования интерпретатора, в Perl 6 программы компилируются в байткод, который затем выполняется в специальной виртуальной машине. В качестве базовой реализации Perl 6 развивается компилятор Rakudo, который может работать с виртуальными машинами MoarVM (по умолчанию), JVM и Niecza (ранее используемая виртуальная машина Parrot, в последних выпусках Rakudo не поддерживается).

С особенностями Perl 6 можно познакомиться в серии обзоров Андрея Шитова. Краткое резюме основных отличий от Perl 5:

  • Возможность определения типизированных переменных ("my Int $i;" или "sub count(Int $i){", если присвоить $i строковое значение будет выведена ошибка). Поддерживаются типы Bool, Int, Str, Array, Hash, Complex, Num, Pair;
  • Полноценная система классов для объектно-ориентированного программирования (определение "class A {has $.i; method test($what)...}" и вызов "my $a = A.new(i => 1); say $a.i;"). Для наследования при объявлении класса следует указать родительский класс ("class B is A {" или "class C is A is B {").
  • Упрощение определения переменных ("my @list = 1, 2, 3;" или "my %hash = 'test1' => 1, 'test2' => 2;") и возможность использования Unicode в именах переменных ("my $переменная = 1;");
  • Определение области видимости переменной и элементов классов при помощи "твиглов" (%*ENV, $?FILE, $!a, $.b);
  • Возможность указания необязательных аргументов функции и значений по умолчанию ("sub func(Int $i?)", "sub func(Int $i = 1)");
  • Поддержка передачи аргументов функции по именам (определение "sub power(:$base, :$exponent)", вызов "power(:base(2), :exponent(3))");
  • Возможность создания вложенных функций и определения нескольких функций с одним именем (разделение по типам аргументов);
  • Методы параллельного программирования: каналы и механизмы синхронизации;
  • Анонимные блоки-замыкания ("my $cube = -> $x {$x ** 3};") и динамические переменные ("my $*var = 'Alpha'");
  • Изменённый синтаксис регулярных выражений и возможность определения грамматик;
  • Широкий набор метаоператоров;
  • Метод ".WHAT" для быстрого определения типа переменной ($scalar.WHAT) и оператор "===" для сравнения объектов типов ("if ($value.WHAT === Int)");
  • Переменная "$/" для записи результата сопоставления в регулярном выражении (совпавшую строку можно получить через $/.Str, для подстрок используется синтаксис $/[1] идентичный $1);
  • Переменная "$!" для доступа к сообщению об ошибке.


  1. Главная ссылка к новости (http://www.pigdog.org/auto/sof...)
  2. OpenNews: Архиву Perl-модулей CPAN исполнилось 20 лет
  3. OpenNews: Релиз языка программирования Perl 5.22.0
  4. OpenNews: Первый релиз Perl 6 ожидается до конца 2015 года
  5. OpenNews: Языку Perl исполнилось 25 лет
  6. OpenNews: Увидел свет Rakudo Star, первый готовый к использованию дистрибутив Perl 6
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/43104-perl
Ключевые слова: perl, perl6
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (100) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, neon1ks (ok), 10:44, 07/10/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +19 +/
    Ларри Уолл наконец сдержал обещание.
     
     
  • 2.7, n (??), 11:07, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Ларри Уолл наконец сдержал обещание.

    Ещё нет. Это ж не релиз :)

     
     
  • 3.10, funny.falcon (?), 11:54, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +3 +/
    У нас ещё есть время до рождества предотвратить эту катастрофу!
     

  • 1.2, Аноним (-), 10:52, 07/10/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/
    Да ладно?! Perl 6 создавался всего лишь на год меньше, чем мой возраст!
     
     
  • 2.99, Аноним (-), 09:54, 09/10/2015 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > Да ладно?! Perl 6 создавался всего лишь на год меньше, чем мой
    > возраст!

    Да ладно, тебя всего-то минут пять делали...

     

  • 1.3, Аноним (-), 10:54, 07/10/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –6 +/
    И что, много там таких вот кричащих заглавными "WHAT" ? Неоднородность синтаксиса меня всегда отвращает от языка, как, например, от питона c его "__init__"
     
     
  • 2.6, n (??), 11:06, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Этот момент как-раз вполне такой консистентный: все специальные методы и переменные в перле пишутся большими буквами.
     
  • 2.8, freehck (ok), 11:26, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Вас отвращает -- Ваши проблемы. В сообществе Perl-разработчиков TIMTOWTDI считается плюсом.
     
  • 2.41, djbaldey (ok), 18:42, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    И шо вы имеете против питона, если не понимаете разницу между синтаксисом и названием метода инициализации экземпляра класса?
     
     
  • 3.43, Аноним (-), 19:28, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    А вы думаете, что только у метода инициализации класса такой синтаксис?
     
     
  • 4.52, Аноним (-), 20:41, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Ну вообще-то так и есть. Кроме как у спец __методов__ больше нигде и не используется такая конструкция.
     
     
  • 5.60, Aleks Revo (ok), 23:11, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Используется — в спецсвойствах типа __all__, __name__ и т.п., что, впрочем, подтверждает правило, а не является исключением.
     

  • 1.11, б.б. (?), 12:03, 07/10/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +6 +/
    этого не может быть. этого просто не может быть.

    сначала они выпустили Duke Nukem Forever. затем Perl 6.

    ЧТО ТЕПЕРЬ ЖДАТЬ?

     
     
  • 2.14, anonymous (??), 12:11, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +17 +/
    Half-Life 3
     
     
  • 3.28, б.б. (?), 13:11, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +3 +/
    наше поколение не знает, что это такое

    так, как мы ждали Duke Nukem Forever и Perl6, мы уже ждать не сможем :)

     
  • 3.29, Сырно (?), 13:21, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Именно. Как известно, Valve переписали движок Source на Perl 6. Теперь ждут релиза.
     
     
  • 4.32, Аноним (-), 14:35, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Они ждут, пока он запустится для тестирования.
     
  • 3.83, tmplsr (?), 14:43, 08/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    https://games.mail.ru/pc/news/2015-03-19/gejb_njuell_ob_jasnil_pochemu_valve_n
    Valve официально признала, что юзвери для них -- только подопытное хомячьё для обкатки новых технологий. Ждите и дальше, чё.
     
  • 2.19, user (??), 12:32, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +20 +/
    Hurd
     
  • 2.22, cmp (ok), 12:45, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • –12 +/
    Грядет геморой с доустановкой этой 6.х для особо одаренных софтин сначала, а потом доустановка 5.х для особо отсталых, когда дистры смигрируют на 6.х.

    Обилие $. $/ $* $: всякого рода уникальных конструкций делают его, мягко говоря, хреновочитаемым, конечно if($x.WHAT === Int) куда лучше, чем if(is_int($x)), а "суперсовместимось" от версии к версии дарят незабываемые минуты счастья поиска и инсталляции правильной, параллельно с системной, с правильными библиотечками и прочим скрабом.

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

     
  • 2.93, AndDT (ok), 00:48, 09/10/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    бету ReactOS
     

  • 1.12, anonymous (??), 12:03, 07/10/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +5 +/
    Поздравляю всех причастных!

    Перл5 - отличный язык, но я пока больше минималистичный Lua нравится (легче встраивается, легче stand-alone приложения делать). Хотя для быстрого прототипирования луа перлу не замена.

    Обязательно попробую перл6, но уже после официального релиза.

     
     
  • 2.57, chinarulezzz (ok), 22:31, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +3 +/
    да эт легко, на самом деле (если у тя линукс):



    $ git clone https://github.com/tadzik/rakudobrew ~/.rakudobrew
    $ echo 'export PATH=~/.rakudobrew/bin:$PATH' >> ~/.bashrc
    $ source ~/.bashrc
    $ rakudobrew build moar
    $ rakudobrew build-panda
    # теперь у тебя есть perl6
    $ perl6 -e 'say "hello"'
    # и пакетный менеджер
    $ panda install Task::Star



    Собирается быстро. У меня тот же хацкель собирался раз в 3,4 дольше.
     
  • 2.68, edo (ok), 08:27, 08/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    как-то странно сравнивать lua и perl.
    perl очень крут в работе с текстом, в lua же ни юникода, ни regexp из коробки нет.
     
     
  • 3.84, dq0s4y71 (??), 16:23, 08/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Сейчас уже есть юникод из коробки.
     
     
  • 4.87, chinarulezzz (ok), 18:11, 08/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    http://lua-users.org/wiki/LuaUnicode

    грабли прилагаются?

     
     
  • 5.108, Аноним (108), 08:36, 10/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Когда это стандарт стал именоваться "граблями"-то?
     

  • 1.13, bav (ok), 12:04, 07/10/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    Божечки, perl6 превзошел все ожидания, самый шумный и жуткий синтаксис всех времен и народов.
     
     
  • 2.18, Аноним (-), 12:21, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +18 +/
    А вот уже и неосиляторы подтянулись. Как в старые добрые времена!
     
  • 2.92, serg1224 (ok), 00:12, 09/10/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Божечки, perl6 превзошел все ожидания, самый шумный и жуткий синтаксис всех времен и народов.

    В следующих версиях, видимо, значения символов %,$ и т.п. будет зависеть от номера позиции в строке :-)

    Ща конечно заклюют перловоды, но похоже, что язык превратился из RegExp в "знание для избранных", чтоб потом никто не догадался что именно делает более или менее длинный код, да и желания чтоб такого не возникало :-)

     

  • 1.15, vitalif (ok), 12:11, 07/10/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Что-то мне кажется особых шансов найти свою нишу у 6-го перла уже нет))
     
     
  • 2.24, jOKer (ok), 12:51, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Напротив, ИМХО, они весьма велики. И это заставляет меня заранее "посочувствовать" пыхерам, - ведь от их веб-огорода в первую очередь и будет оттяпан кусочек, на покрытие, так сказать, нужд трудящихся!)))
     
     
  • 3.30, cmp (ok), 13:23, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +11 +/
    > Напротив, ИМХО, они весьма велики. И это заставляет меня заранее "посочувствовать" пыхерам,
    > - ведь от их веб-огорода в первую очередь и будет оттяпан
    > кусочек, на покрытие, так сказать, нужд трудящихся!)))

    Вы это серьезно, или это очень тонкий троллинг?

    Пыхари про ваш перл слыхом не слыхивали. Уже и луа, и руби, и го, и nodejs, и питон, и асп, и ява, но вот щас перл6 всех пыхарей убьет, пффф.. с таким то синтаксисом, ага, я вам брейнфак советую попробовать, ну или новопассит))

     
     
  • 4.61, Aleks Revo (ok), 23:17, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Именно то, что пыхеры не в состоянии осилить перл и вызывает сочувствие Их не... большой текст свёрнут, показать
     
     
  • 5.63, cmp (??), 01:02, 08/10/2015 [^] [^^] [^^^] [ответить]  
  • +/

    Чем
    if($x.WHAT === Int)
    лучше чем
    if(is_int($x))
    ???

    Хоть один вменяемым довод, или идите в лес перл осиливать.

     
     
  • 6.70, edo (ok), 08:28, 08/10/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    а чем хуже?

     
     
  • 7.82, cmp (ok), 14:33, 08/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    - А вы таки еврей - А вы антисимит - А почему вы спрашиваете - А почему в... большой текст свёрнут, показать
     
     
  • 8.88, rico (ok), 18:45, 08/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    просто перл дает больше свободы косячить в том числе такова цена свободы TIMT... текст свёрнут, показать
     
     
  • 9.94, cmp (??), 02:04, 09/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    может читать, но по-мне, так есть чтиво и поинтереснее ... текст свёрнут, показать
     
  • 6.76, Аноним (-), 11:17, 08/10/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ты на основании 1 аргумента принимаешь решение о применимости языка и всех несогласных с этим подходом посылаешь в лес? Диагноз по фотографии удался..
     
     
  • 7.80, Аноним (-), 14:02, 08/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    1 был вопрос, аргументов: $. $/ %*ENV $?FILE $!a $.b - навалом и это в новом, а были еще (<>) и прочая хрень в старом, но это синтаксис, а есть еще вбитый гвоздями в систему рантайм, а несовместимость между ветсиями, о чем я говорил уже здесь, но вы прочитать не можете, а ставите диагноз по 1 фразе дернутой из контекста - да, вам в лес.
     
  • 6.86, q (??), 17:25, 08/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    What гибче, чем хардкоженое название в имени метода. Как минимум, можно в переменную положить тип и сравнивать с ним. Или использовать в своих методах. Часто в ruby, да и perl5 писалось bla.is_a? Array и работа с array. Ну, или твой is_a? MyMagic. Это не супер фича и такой подход часто сигнализирует о ошибке, но в люом случае больше пространства.
     
     
  • 7.89, chinarulezzz (ok), 22:26, 08/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > What гибче, чем хардкоженое название в имени метода. Как минимум, можно в
    > переменную положить тип и сравнивать с ним. Или использовать в своих
    > методах. Часто в ruby, да и perl5 писалось bla.is_a? Array и
    > работа с array. Ну, или твой is_a? MyMagic. Это не супер
    > фича и такой подход часто сигнализирует о ошибке, но в люом
    > случае больше пространства.

    проблемы на ровном месте:



    given (ref $var) {

       when ('SCALAR')   { ... }
       when ('ARRAY')    { ... }
       when ('CODE')     { ... }

       default           { ... }
      


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

     
     
  • 8.101, q (??), 14:37, 09/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Я знаю, просто отвечал на сообщение в чём разница между isInt и What В 5 perl ... текст свёрнут, показать
     
     
  • 9.109, й (?), 11:59, 11/10/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    вы помните переход с perl4 на perl5 я помню в частности, оказалось, что в базо... текст свёрнут, показать
     
  • 3.45, Аноним (-), 19:31, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Напротив, ИМХО, они весьма велики. И это заставляет меня заранее "посочувствовать" пыхерам,
    > - ведь от их веб-огорода в первую очередь и будет оттяпан
    > кусочек, на покрытие, так сказать, нужд трудящихся!)))

    Главной угрозой пыхеров до недавнего времени был руби с рельсой, а теперь и Го. Эти инструменты, как и PHP, хороши тем, что их можно спокойно использовать, не включая мозг. Собственно, и именно поэтому они так популярны.
    Перлу это не грозит.

     
     
  • 4.97, Аноним (-), 05:47, 09/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Я тебя умоляю, вы на рельсах писали похожу только Hello world, или юзали версию 2. Сейчас там позги нужно включать будь здоров плюс временами вылазят баги с подключенными гемами.

    В Го статическая типизация так что там априори нужно мозги включать, хотя не так сильно как в сишечке.

     

  • 1.16, Мяут (ok), 12:16, 07/10/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –10 +/
    > $.i
    > %*ENV, $?FILE, $!a, $.b
    > $i?
    > :$base

    Я до сих пор $ и @ путаю, а тут это.

     
     
  • 2.25, freehck (ok), 13:00, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +6 +/
    А Вы точно писали на Perl5? Как можно путать массив со скаляром? =)
     
     
  • 3.34, Мяут (ok), 15:51, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ну это просто, пока какая-нибудь фигня типа @{$ps->{$t[2]}} не начинается.
     
     
  • 4.56, chinarulezzz (ok), 22:25, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Ну это просто, пока какая-нибудь фигня типа @{$ps->{$t[2]}} не начинается.

    легко: $t[2] - второй элемент массива @t, $ps->{...} указатель на хэш. @{ } разыменовывание массива. Хорошим стилем является разделение сущностей пробелами и их логичное именование. Чтоб легко выхватывались глазами:




    @{ $column->{ $row[3] } }



    В любом случае, это проблема лишь для тех, кто перл видел на картинках.

     
     
  • 5.65, Мяут (ok), 02:18, 08/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > В любом случае, это проблема лишь для тех, кто перл видел на картинках.

    Ну вы пришли бы на проект, выросший на Perl 4 после долгого программирования на Python (где это записывается как ps[t[2]], потому что везде ссылочная семантика), я вас уверяю, и не так бы ругались.

     
     
  • 6.75, chinarulezzz (ok), 10:01, 08/10/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >> В любом случае, это проблема лишь для тех, кто перл видел на картинках.
    > Ну вы пришли бы на проект, выросший на Perl 4 после долгого
    > программирования на Python (где это записывается как ps[t[2]], потому что везде
    > ссылочная семантика), я вас уверяю, и не так бы ругались.

    Меня, к счастью, питон не ограничил. Мне нравится синтаксическая свобода перл.

    А в питоне, ps это массив или словарь? А t? Что из этого массив, а что словарь?

     
     
  • 7.77, noname133 (?), 12:35, 08/10/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >>А в питоне, ps это массив или словарь? А t? Что из этого массив, а что словарь?

    какая разница? Прекрасная запись в отличие от практически нечитаемой абракадабры на Перл.

     
     
  • 8.78, chinarulezzz (ok), 12:53, 08/10/2015 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Так читаемей, да, но понятней не становится Чтоб понять - нужно листать код ... текст свёрнут, показать
     
  • 8.79, angra (ok), 13:49, 08/10/2015 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Нечитаемой абракадаброй он является только для ниасиляторов, неспособных понять ... большой текст свёрнут, показать
     
     
  • 9.105, _Anonyus_ (?), 20:01, 09/10/2015 [^] [^^] [^^^] [ответить]  
  • –3 +/
    gt оверквотинг удален Чтобы не бегать смотреть определения переменных, давно п... большой текст свёрнут, показать
     
  • 3.36, . (?), 16:20, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    >А Вы точно писали на Perl5? Как можно путать массив со скаляром? =)

    Дык - когда пишешь - проблем нет!
    А вот прочитать ипонять потом, через пол годика-годик ~8-0

    Не робяты - этот ребёнок мёртвый до рождения. И чего его 15 лет на физрастворе держат - ХЗ.

     
     
  • 4.46, Аноним (-), 19:32, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Не робяты - этот ребёнок мёртвый до рождения. И чего его 15 лет на физрастворе держат - ХЗ.

    Just for fun же.

     
  • 4.59, chinarulezzz (ok), 22:58, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Дык - когда пишешь - проблем нет!
    > А вот прочитать ипонять потом, через пол годика-годик ~8-0

    попробуй писать руками. Как в Modern Perl например.

     
     
  • 5.66, Алексей Морозов (ok), 06:37, 08/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Да, на удивление в CPAN'е в какой-то момент стало нормой писать "на человеко-читаемом языке". Беда только, что к тому моменту почти все ендлузеры, которым это было важно, успели уползти на альтернативные языки со своими технологическими стеками, как минимум, не уступающими перлу + CPAN.
     
     
  • 6.74, chinarulezzz (ok), 09:54, 08/10/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > которым это было важно, успели уползти на альтернативные языки со своими
    > технологическими стеками, как минимум, не уступающими перлу + CPAN.

    и в каком языке есть metacpan или nytprof?

     
     
  • 7.111, psv (??), 16:27, 12/10/2019 [^] [^^] [^^^] [ответить]  
  • +/
    R - cran
     
  • 2.73, n (??), 09:19, 08/10/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Привет, Мяут!
     

  • 1.17, Аноним (-), 12:21, 07/10/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +7 +/
    Если сравнивать с Perl 5, то изменений в Perl 6 не больше чем было между Perl 5 и Perl 3/4. Помню было очень непривычно переходить на Perl 5, но потом как-то столкнулся со старым скриптом и не понял как  Perl 3/4 вообще пользоваться можно было, без модулей, хэшей и ссылок Perl уже не Perl. Взлетит или нет покажет время. Perl 6 по своему хорош и не настолько принципиально не совместим с Perl 5, но с первого взгляда непривычен и конкуренция среди скриптовых языков слишком высока.
     
  • 1.21, хрю (?), 12:43, 07/10/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    текущая ниша перла - скрипты, перл6 туда не засунуть, а для других применений нужны наработки библиотек и фреймворков. без этого он останется никому не нужной поделкой. пока всё идет по пути поделки.
    синтаксис нужно было упрощать, а его ещё сильнее зашумили. чужой код на перле и так был нечитаем, а теперь и смотреть наверно будет больно ...

    в общем печаль, какая-то.

     
     
  • 2.55, chinarulezzz (ok), 22:17, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >текущая ниша перла - скрипты

    а у меня оно для всего, практически: скрипты, всякая автоматика, веб-боты, отчёты, веб-сайты, парсеры. А если нужен низкий уровень, то, если задача простая, беру C или ObjectPascal, а если как одна из функций, то в перле даже это легко делается с XS. Но до этого вряд ли дойдёт, с cpan/metacpan, в котором есть обёртки для низкоуровневых либ.

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

    Согласен что синтаксическая эстетичность важна. Но это не perl-way. Те, кто от него ждали этого - лицемеры, которые и пятым не пользовались, и шестым не будут. Кому же это окажется по вкусу - уэлкам. В шестом очень много вкусного.

     

  • 1.23, Аноним (-), 12:48, 07/10/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    А ведь PERL создавался для того, чтобы писать программы было так же просто, как разговаривать. И тут такой синтаксис. М-да
     
     
  • 2.26, cmp (ok), 13:05, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    7-8, наверное, будет конструкции брейнфак поддерживать - объектно-ориентированный брейнфак, да рядом с программистами на таком Линус со своей способностью писать чистые процессорные инструкции будет как школьница стесняться.
     
  • 2.58, chinarulezzz (ok), 22:40, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > А ведь PERL создавался для того, чтобы писать программы было так же
    > просто, как разговаривать.

    В перл можно писать стихи, а можно патч бармина. Язык не стесняет твои возможности. Как хочешь - так и др^W пишешь.

     

  • 1.27, th3m3 (ok), 13:08, 07/10/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –5 +/
    >>выступлении в музее

    Как это знаково. Perl пора в музей, на свалку истории =)

     
     
  • 2.35, Аноним (-), 16:08, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • –4 +/
    >>>выступлении в музее
    > Как это знаково. Perl пора в музей, на свалку истории =)

    +1

    Вряд ли кто-то будет заморачиваться c Perl6. Тут старое г.. бы были силы поддерживать. В яндексе, я знаю, статистика на perl. Но для админов там очень желательно знать python.

     
     
  • 3.50, Аноним (-), 19:37, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Вряд ли кто-то будет заморачиваться c Perl6. Тут старое г.. бы были
    > силы поддерживать. В яндексе, я знаю, статистика на perl.

    Я вам больше скажу, на некоторых серверах яндекса все еще FreeBSD живо.

     
  • 3.64, YaakovTooth (ok), 01:55, 08/10/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Для админов нужно уметь perl/python на уровне чтения / отладки. Никто от админа не будет требовать знание реализации GIL в python 3.5 и задавать коварные вопросы про GC.
     
  • 2.40, fi (ok), 18:32, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +2 +/
    как в песне:  «не спеши ты нас хоронить»…

    тут вот меня зазывают на новую работу - дают €2.5тыс. за перл :)

     
     
  • 3.47, Аноним (-), 19:34, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > тут вот меня зазывают на новую работу - дают €2.5тыс. за перл :)

    Им кто-то накодил критически важное приложение и сбежал, а теперь они пытаются найти хоть кого-то, кто бы смог ЭТО поддерживатьс :)

     
     
  • 4.85, fi (ok), 16:31, 08/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    >> тут вот меня зазывают на новую работу - дают €2.5тыс. за перл :)
    > Им кто-то накодил критически важное приложение и сбежал, а теперь они пытаются
    > найти хоть кого-то, кто бы смог ЭТО поддерживатьс :)

    Все проще - расширение компании - больше задач. В нашу комп. тоже бы надо еще одного perl devel., работы прибавилось.


     
  • 4.90, chinarulezzz (ok), 22:29, 08/10/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >> тут вот меня зазывают на новую работу - дают €2.5тыс. за перл :)
    > Им кто-то накодил критически важное приложение и сбежал, а теперь они пытаются
    > найти хоть кого-то, кто бы смог ЭТО поддерживатьс :)

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

     
  • 3.53, th3m3 (ok), 21:29, 07/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Интерпрайз же поди. Этих уже ничего не спасёт.
     
  • 3.62, АнониМ (ok), 00:18, 08/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    перл поддерживать очень тяжело. так что серьёзно надо подумать прежде чем согласится.
     

  • 1.31, Nikolay Mishin (?), 13:52, 07/10/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Очень рад, посмотрим как там с Pluck, Rest api, если это работает, то можно будет что-нибудь пописать. Удачи Лари Воллу и Джонатану Вортингтону. Ну и панду (инсталлятор модулей) надо будет попробовать.
     
  • 1.38, Zenitur (ok), 18:02, 07/10/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Когда обновят скрипт-однострочник?
     
  • 1.44, Аноним (44), 19:30, 07/10/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    > Методы параллельного программирования: каналы и механизмы синхронизации;

    уже не нужно - т.к. есть гораздо более читабельный и простой Go

     
  • 1.49, freeman2 (ok), 19:36, 07/10/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    > пошутив, что теперь основным приоритетом станет исправление ошибок, которые случайно могут быть приняты за новые возможности

    он не шутил

     
  • 1.51, Аноним (-), 20:41, 07/10/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А парот они совсем выкинули? Была такая хорошая идея - вм для всех скриптовых язычков, общие библиотеки. А тут на тебе.
     
     
  • 2.69, Аноним (-), 08:28, 08/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > А парот они совсем выкинули? Была такая хорошая идея - вм для
    > всех скриптовых язычков, общие библиотеки. А тут на тебе.

    Идея захлебнулась при попытке объять необъятное. В конце концов, оказалось, что вместо качественной оптимизации и поддержки Perl 6, Parrot погнавшись за 10 зайцами толком ни для одного языка полноценно не подходит и не позволяет с текущей архитектурой реализовать некоторые задумки Perl 6. Со временем  разработку Parrot почти забросили.

     

  • 1.54, chinarulezzz (ok), 22:07, 07/10/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Доклад целиком был посвящён возможностям языка. Особо подчёркивалась возможности мета-программирования языка, ленивые вычисления, возможность встраивания других языков, например, Python и Lua уже в стандартной Inline-библиотеке (что было сопровождено цитатой: «This is why we say all languages are religious dialects of Perl 6» — «Вот почему мы говорим, что все другие языки — это религиозные диалекты Perl 6»).
     
  • 1.71, Аноним (-), 08:35, 08/10/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Cpan для 6 существует?
     
     
  • 2.107, анонимус вульгарис (?), 23:06, 09/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    https://metacpan.org/search?q=perl6
     

  • 1.81, angra (ok), 14:05, 08/10/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    $ time perl -e ''

    real 0m0.002s
    user 0m0.002s
    sys 0m0.000s

    $ time perl6 -e ''

    real 0m0.161s
    user 0m0.141s
    sys 0m0.019s


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


    $ time perl -e 'my @a;push @a,$_ for 1..100'

    real 0m0.002s
    user 0m0.000s
    sys 0m0.001s

    time perl6 -e 'my @a;push @a,$_ for 1..100'

    real 0m0.184s
    user 0m0.163s
    sys 0m0.020s

    Ну хоть не несколько секунд, как было во время parrot и rakudo *, но и 0.02 на одну строку кода это все еще ужасно много. С учетом того, что скорость работы по прежнему не значится в приоритетах, единственной областью применения является "поиграться с perl6", для чего-то практического по прежнему не годится.

    Update
    Решил еще глянуть на скорость строковых операций

    $ time perl -e 'my $s;$s.=$_ for 1..100000'

    real 0m0.016s
    user 0m0.014s
    sys 0m0.002s

    $ time perl6 -e 'my $s;$s~=$_ for 1..100000'

    real 0m2.977s
    user 0m2.272s
    sys 0m0.703s

    Разница в 200 раз. Я ruby не использую из-за того, что он в два-три раза медленнее perl, а тут в двести раз. А ведь по сравнению с ruby у perl6 не так уж много вкусностей.


     
     
  • 2.91, chinarulezzz (ok), 22:33, 08/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Погоди немножко. Это ведь бета ;) Из за типизации есть хороший потенциал для оптимизаций.

    > А ведь по сравнению с ruby у perl6 не так уж много вкусностей.

    По сравнению с руби, даже у perl5 больше вкусностей.


     
     
  • 3.95, angra (ok), 02:16, 09/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Погоди немножко. Это ведь бета ;) Из за типизации есть хороший потенциал
    > для оптимизаций.

    Я это слышу со времен rakudo *. Надо отдать должное, на пару порядков с тех пор ускорили, в том числе путем смены VM, осталось пройти еще пару. Может еще выжмут что-то перепрыгнув еще куда-то, например на v8, но боюсь основная проблема не в VM.

    > По сравнению с руби, даже у perl5 больше вкусностей.

    Ты точно знаешь ruby? Может ты его с питоном спутал. Ruby = perl - исторический мусор + классы + итераторы + прочий сахар. То есть тот же путь, что и Perl6, только последний с одной стороны вобрал в себя чуть больше, с другой оставил чуть больше совместимости, например те же сигилы.

     
     
  • 4.96, chinarulezzz (ok), 02:45, 09/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Я это слышу со времен rakudo *. Надо отдать должное, на пару
    > порядков с тех пор ускорили, в том числе путем смены VM,
    > осталось пройти еще пару. Может еще выжмут что-то перепрыгнув еще куда-то,
    > например на v8, но боюсь основная проблема не в VM.

    поживём - увидим. Надеюсь, еще лет 15 ждать не придётся)

    > Ты точно знаешь ruby? Может ты его с питоном спутал. Ruby =
    > perl - исторический мусор + классы + итераторы + прочий сахар.

    Не, ruby = perl - cpan/metacpan - скорость - доступ_к_кишкам_компилятора - обратная совместимость - goto :-D - полная_поддержка_уникода.

    Но есть и плюсы: ruby = perl + единственно_верное_ООП.

    Про мелочи, вроде постоянно конвертации to_f/to_i/to_s не грю.

    > То есть тот же путь, что и Perl6,

    ой не, друг. спецификация, junctions, расширенные регулярки (rules), ленивые списки, типизация, autothreading, макросы, наконец встроенный интерпретатор lua и python :-}


     
     
  • 5.98, Аноним (-), 08:59, 09/10/2015 [^] [^^] [^^^] [ответить]  
  • –2 +/
    дурик в Ruby юникод давно есть(что имхо не гуд), и другие минусы присутствуют.
    > доступ_к_кишкам_компилятора

    я удивлюсь если в интерпретаторах это появиться.

     
     
  • 6.100, chinarulezzz (ok), 14:26, 09/10/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >в Ruby юникод давно есть

    http://unicode.org/versions/enumeratedversions.html

    >я удивлюсь если в интерпретаторах это появиться.

    можешь начинать http://perldoc.perl.org/B.html :)

    >дурик

    зря подписался, по комментарию и так понятно.

     
     
  • 7.102, Аноним (-), 15:42, 09/10/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >>в Ruby юникод давно есть
    > http://unicode.org/versions/enumeratedversions.html

    И дальше то что? Тебя версия юникода не устраивает? Ой нет предположу что ты сидишь на руби 1.8.7

    >>я удивлюсь если в интерпретаторах это появиться.
    > можешь начинать http://perldoc.perl.org/B.html :)

    ага я уже понял что ты не отличаешь компилятор и интерпретатор.

    >>дурик
    > зря подписался, по комментарию и так понятно.

    Какое самомнение, у тебя абсолютно нечем не подкрепленное.
    Болобол обыкновенный, с начало сказал потом подумал, в больничку что ли сходи пусть тебя пролечать.

     
     
  • 8.106, chinarulezzz (ok), 20:24, 09/10/2015 [^] [^^] [^^^] [ответить]  
  • +/
    https bugs ruby-lang org issues 11561 8-ки в релизах нету В trunk e только на... текст свёрнут, показать
     
  • 2.103, Аноним (-), 18:40, 09/10/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Зачем вам нужна возможность исполнять пустой perl-скрипт пятьсот раз в секунду?
     
     
  • 3.104, Илья (??), 19:18, 09/10/2015 [^] [^^] [^^^] [ответить]  
  • –1 +/
    чтобы вставлять простые перл-одностроки в конвеер, не?
     

  • 1.110, Аноним (-), 19:48, 12/10/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    При всем уважении к Ларри, без обратной совместимости с 5 версией это мертвый язык.
    Перл 5 рабочий инструмент и останется им. Перл 6 будет конкурировать с эзотерикой и функциональщиной.
     

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



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

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