LINUX.ORG.RU

Появился ещё один форк Perl: cperl 5.22.1

 ,


1

2

Рейни Урбан анонсировал выпуск форка Perl: cperl 5.22.1.

Имя cperl означает Perl с классами (просматривается параллель с ранним именем C++ — C с классами), поддержкой компилятора или просто дружелюбный к компаниям perl. Но, к сожалению, выпуск cperl 5.22.1 оказался пока без поддержки классов, но, тем не менее, форк имеет множество других интересных особенностей.

Утверждается, что cperl по крайне мере в 1.5 раза быстрее, чем Perl 5.22, и в 2 раза быстрее, чем Perl 5.14. Потребление памяти даже ниже, чем в 5.6.2 и 5.10.

cperl по большей части совместим с Perl 5.22, подавляющая часть CPAN модулей будет работать с cperl.

Основные возможности, вошедшие в cperl 5.22.1:

  • Базовые типы (Int, UInt, Num, Str)
    # Массив целых чисел @a.
    # Строгая проверка типа на этапе компиляции
    my Int @a = (0..9);
    
  • Типы в сигнатурах функций
    sub (int $i)   # синтаксис Perl 6
    sub ($i: int)  # синтаксис в других типизированных языках
    
  • Декларация возвращаемого функцией типа как атрибут
  • Множество встроенных атрибутов функций (например :const)
  • Фиксированные массивы с проверкой во время компиляции и оптимизациями
    # Массив размер, которого не может быть изменён
    my @a[20] :int;
    
  • Статические методы конвертируются в вызов подпрограммы на этапе компиляции
  • Модуль Config реализован в XS
  • strict, attributes, DynaLoader, XSLoader — встроенные пакеты, переписаны на C
  • Хэш-функция по умолчанию FNV1A (также, как и форке stableperl)
  • Исправлена работа лексической $_
  • Улучшена сборочная система

Подробное описание новшеств и грядущих изменений в cperl, доступно здесь. Загрузить исходный код cperl можно из репозитория проекта на github

Взято с http://perlnews.ru/

Deleted

Последнее исправление: Deleted (всего исправлений: 1)

Эй, кто там уже N лет подряд закапывает Perl ? Живее всех живых! :)

Upd: Надо бы перенести в новости.

joy4eg ★★★★★
()
Последнее исправление: joy4eg (всего исправлений: 1)

Такое ощущение, что ванильные проекты делаются полными кретинами, если их тут всякие дяди Васи форкают и ускоряют в несколько раз.

buddhist ★★★★★
()

Имя cperl означает Perl с классами

выпуск cperl 5.22.1 оказался пока без поддержки классов

/thread

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

Дяди Васи

Perl 11 is an effort to make Perl 5 pluggable at the following levels:

Runtime Virtual Machine Compilation Unit Format / AST Source Code Syntax / Compilers This will open up the doors to many kinds of language / technology experimentation, without endangering the existing Perl 5 / CPAN code bases that we depend on every day.

Pluggable VMs would be parrot, p2, JVM or .NET running Perl5 and Perl 6 code. 5 + 6 == 11!

Deleted
()

cperl означает Perl с классами
к сожалению, выпуск cperl 5.22.1 оказался пока без поддержки классов
подавляющая часть CPAN модулей будет работать с cperl

Упоролись на отличненько.

outtaspace ★★★
()

Утверждается, что cperl по крайне мере в 1.5 раза быстрее, чем Perl 5.22, и в 2 раза быстрее, чем Perl 5.14. Потребление памяти даже ниже, чем в 5.6.2 и 5.10.

Наверное, это хорошо. Но пока патчи не примут в апстрим, оно нафиг никому не нужно. ИМХО

router ★★★★★
()

Я проспал всю зиму, и сегодня первое апреля?

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

https://github.com/perl11/cperl/commits/merge-upstream

Bugfixes for perl5 upstream

This can be easily taken up upstream, was already perlbug'ed and published, and do not violate any of the p5p commit policies and previous decisions. From those 47 patches 2 were taken so far, some were rejected and 2 were butchered, i.e. rewritten in a worse way.

:)

Не «нафиг никому не». Нужно. Есть сборки (вроде activestate, strawberry), или собственные (и для того же андроида), в которые авторы могут углядеть пользу тех или иных патчей. Или сам, если интерес есть, или дистрибутивостроители :)

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

Нет. Perl просто инструмент для себя. Мне с ним хорошо. А молодым лучше свежачок какой в виде Ruby/Python/Whatever.

P.S. некромантией по утрам занимаюсь, когда надо вытащить своё бренное тело из под одеяла.

necromant ★★
()
Последнее исправление: necromant (всего исправлений: 1)

Он пытался на YAPC расказать об проекте больше, но зря что только расказывал в секции лайтинг толков . Но товарищ молодец, может даже у себя в продакшене пару скриптов с AnyEvent запущу

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

Молодое поколение в большинстве своём не осилит концепцию Perl. Их нужно привести за ручку к единственно правильному и понятному для даунов решению. Но это чисто моё скептическое мнеие относительно мозгов подрастающих программистов. Можете принять это за старческое ворчание :)

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