Релиз Parrot 2.0.0, виртуальной машины для Perl 6

Представлен релиз виртуальной машины для динамических языков программирования Parrot 2.0.0, в первую очередь используемый в проекте Rakudo Perl 6. Кроме Perl6, Parrot поддерживает выполнение байткода для таких языков, как Tcl, Javascript, Ruby, Lua, Scheme, PHP, Python, APL и .NET. Рассчитанный на широкое использование стабильный релиз проекта Rakudo, реализации языка Perl 6 для виртуальной машины Parrot, намечен на апрель. Первый стабильны релиз будет содержать только базовый костяк описанных в спецификации Perl6 возможностей, остальное будет дорабатываться в следующих выпусках.

Основные новшества Parrot 2.0.0:

  • Возможности:
    • Контекст PMC (Parrot Magic Cookie) теперь поддерживает основанную на атрибутах интроспекцию;
    • Контексты PMC и CallSignature объединены в единый CallContext, что кроме удобства привело к определенному увеличению производительности;
    • Директива .lex теперь генерирует исключение, когда используется с некорректным типом регистра;
  • Платформы:
    • Протестированы платформы PPC, PPC64 и ARM под Linux;
    • Улучшен процесс подготовки пакетов для свободных операционных систем;
  • Сомнительные возможности:
    • In/out параметры в строковых функциях модификации;
    • Обработка void-значений в NCI сигнатурах;
    • Параметр, определяющий порядок прохождения опкода в PBC;
  • Разное:
    • Продолжен процесс переноса базовых тестов из Perl 5 в PIR;
    • Улучшена утилита для проверки зависимостей;
    • В файлах сборки улучшена обработка зависимостей;
    • Жизненный цикл разработки переведен на стадии продолжительностью 6 месяцев.

© OpenNet