Parrot спочатку був розроблений для підтримки розробленість 6.x філії Perl, але розширився в широкий проект, який надає віртуальну машину, яка підтримує кілька мов програмування, компіляції коду з однієї мови на іншу.
Це дозволяє розробникам компілювати і потім запустити байткода з однієї мови на іншу мову.
Мови в даний час таргетинг папуги VM:
Rakudo Perl 6
Lua
Winxed
Tcl
JavaScript
Рубін
Схема
PHP
Python
APL
.NET мови
Що нового в цьому випуску:
- Фіксовані вікна посилаються регресії з 7,0 .2 з cl.exe.
- Виправлена rlimit компіляції для OpenBSD.
- Розслаблення стрес-тесту загальний GC і повторно додати варіант JSON.nqp.
Що нового у версії 7.3.0 / 7.5.0-DEV:
- Фіксовані вікна посилаються регресії з 7.0.2 з cl.exe.
- Виправлена rlimit компіляції для OpenBSD.
- Розслаблення стрес-тесту загальний GC і повторно додати варіант JSON.nqp.
Що нового у версії 7.3.0 / 7.4.0-DEV:
- Фіксовані вікна посилаються регресії з 7.0.2 з cl.exe.
- Виправлена rlimit компіляції для OpenBSD.
- Розслаблення стрес-тесту загальний GC і повторно додати варіант JSON.nqp.
Що нового у версії 7.3.0:
- Фіксовані вікна посилаються регресії з 7.0.2 з п .exe.
- Виправлена rlimit компіляції для OpenBSD.
- Розслаблення стрес-тесту загальний GC і повторно додати варіант JSON.nqp.
Що нового у версії 7.0.2 / 7.1.0-DEV:
- Додані експериментальні INTERPINFO_MAX_GENERATIONS апі, зроблений MAX_GENERATIONS --ccflags регульований, перейменований в GC_MAX_GENERATIONS, і використовувати правильне число.
- долучення Застарілою атрибут для всіх застарілих функцій.
- Виправлена помилка синтаксичного аналізу аварій, виявлені американськими нечіткого Лоб.
- Замінено кінець оп всередині PCC методів за допомогою returncc оп.
- Оздоблення PackFile_ API старіння і рефакторінга. Немає неправильних експорту більше.
- повторно включати такі підписи NCI: т (CString), 2 (Integer PMC - & # x3e; коротке замикання),
- 3 (- & # x3e; INT), 4 (- & # x3e; довгий). СДЛ і Прокльони тепер можна використовувати знову.
- долучення корисне підмножина статичних NCI санках в ядро-санки.
- Оновлений додаткові санки пройти найбільш NCI приклади без libffi, просто
- 2, 3 і 4 вимагають libffi, коли використовується деструктивно на Integer КУП.
- Виправлено пару блокування ResizablePMCArray (& Quot; RPA & Quot;). Сплайсингом регресію з 6.10, що вибухнула Perl6
- Додано додатковий попередження RPA сплайсингу, як в perl5, коли overlarge зміщення регулюється.
- Виправлена GC регресії від 6.11 з ResizablePMCArray # 1159 (1,2% повільніше).
- Пропустити запуску попередження & Quot; Невідомий ` 'кодування, за замовчуванням ASCII & Quot; коли nl_langinfo () зазнали невдачі, і мовчки використовувати ASCII.
Що нового у версії 6.9.0:
- Включити & # x3e; 2 Гб оперативної пам'яті на Дарвіні також .
- Виправлена аварії з папугою -d8 DEBUG_IMC dump_instructions
- Виправлена ширина Sprintf розраховувати юнікод рядків.
- ширина Фікс Sprintf для NaN / INF / -Inf
- Оптимізація utf8_substr. Не використовуйте повільний utf8 итератор.
- Відновлена і констатувала iso_8859_1_typetable. Додано & # x5c; x2028, & # x5c; x2029 і & # x5c ;. V, щоб бути cclass нового рядка
- Захист callmethod від порожнього об'єкта, пропущений fixup_subs безпосередніми.
- Додайте скидання Couroutine і методи автосброса.
- Додайте -t8 прапор трасування для станів сопрограммная
- для інвалідів Прапори трасування -T4 і -t8 з --optimize.
- гармонізувати повідомлення про використання папуга
Що нового у версії 6.6.0:
- Оптимізований виклик методу над головою під час компіляції в pmc2c безпосередньо, щоб уникнути під час виконання накладних витрат. Менше темп. PMC, менш гілки і уникаючи, по крайней мере 2 дорогих функцій C у виклику методу.
- Нове попередження арность & Quot; невірне кількість аргументів:% d пройдено, очікувалося% d & Quot; .
Що нового у версії 6.3.0:
- Нові Результати тестування
- Виправлені тести для Cygwin і cygwin64
- Додані 2 нові приклади / тести / файли і контрольні показники / run.sh
Що нового у версії 5.9.0:
- Чи не скаржся на utf8 мультибайтних символів розщеплених кордони шматків.
- Виправлена ReadAll SEGV на EOF, наприклад, при виклику ReadAll двічі.
- Виправлена SEGV, коли .CONST не найден.
- Додана PackfileView-сумісні методи до EvalPMC.
Що нового у версії 5.0.0:
- Це перший стабільний реліз Parrot з різьбленням підтримка (через Task PMC).
Що нового у версії 4.10.0:
- Додана PMCNULL перевірити result_info оп
- Виправлена помилка роздільник запису на IO ручки.
Що нового у версії 4.9.0:
- Тримайте кодування інформації в IMCC оптимізатора, який фіксує CONCAT ор, але, ймовірно, багато інших випадків з не-ASCII кодуються постійні рядки.
- Виправлена ByteBuffer set_string_native, який став не синхронізовані з двома внутрішніми буферами.
- Налаштування преднатягом кроки при виклику з Perl -d configure.pl.
- Strip непотрібний конфігураційні ключі від встановленої конфігурації хеш. Зберігає 6360 байт з кожного встановленого виконуваного файлу.
- Parrot_get_cpu_type повертає в даний час & Quot; невідомо & Quot; для всіх невідомих типів процесорів. На НЕ-вікна він повернувся, перш ніж 4.9.0 порожній рядок.
Що нового у версії 4.7.0:
- Додані .all_tags () і .all_tagged_pmcs () методи до PackfileView PMC.
- Кілька збірки і стандарти кодування виправлення.
Що нового у версії 4.5.0:
- Додані .write_bytes і .read_bytes методи до FileHandle і торцеві ПВК.
- Додана Parrot_api_set_stdhandle, Parrot_api_new_call_object і Parrot_api_setup_signature функції до вкладення API.
- Вилучені & Quot; може & Quot; Віртуальні таблиці.
Що нового у версії 4.1.0:
- Загальні бібліотеки і бінарні файли Встановлювані тепер роздягнули, якщо побудований з --optimize на Cygwin, що значно знижує їх розмір на диску.
- Нові експериментальні PCC, пов'язані з OPS додається в серцевину.
Що нового у версії 4.0.0:
- Core:
- Кілька прибирань до підсистеми інтерп API
- прибирань і документація доповнення для зелених потоків і таймерів
- Итератор ПМК і тепер сім'я реалізувати & Quot; итератор & Quot; Роль
- Виправлена помилка в Parrot_ext_try була зафіксована, де він не був вискакують контекст правильно
- Документація:
- Docs для всіх версій Parrot коли-небудь випущених в даний час доступні на http://parrot.github.com
- Тести:
- Таймер PMC тести були перетворені з PASM до PIR
Що нового у версії 3.10.0:
- Мітка віртуальні таблиці був доданий в Select PMC
- Модуль Parrot :: Вставити Perl 5 був видалений з parrot.git і тепер живе в https://github.com/parrot/parrot-embed
- Нова реалізація зелених ниток додавали до Parrot, в рамках підготовки до надійної гібридної системи заправки. Зелені потоки в даний час не доступні на Windows.
<Літій> Метод set_random був доданий до цілого числа РМС, так випадкові числа можуть бути згенеровані без необхідності завантажувати математики dynops
Що нового у версії 3.9.0:
- Core:
- Філія WhiteKnight / kill_threads був об'єднаний, який видаляє старе і зламане виконання різьблення / паралелізму. Краще і більш гнучкі Примітиви паралелізму в даний час працюють. Це також включає видалення деяких з останніх залишків збірки коду з Parrot, а також видалення частки і share_ro віртуальних таблиць.
- random_lib.pir був видалений, так як кращі альтернативи вже існують
- Заморожування і відтавати віртуальні таблиці були видалені з PMC За замовчуванням, тому що вони не були корисні і заподіяли важко знайти помилки.
- Нова підпрограма профілювання RunCore був доданий. Воно може бути включено з аргументом командного рядка з -R subprof. Отримані дані можуть бути проаналізовані з KCachegrind.
- Додана get_string в віртуальні таблиці FixedIntegerArray і FixedFloatArray ОНК
- Метод відновлення () був доданий до Hash PMC, який оновлює один Hash з вмістом іншого. Це прискорює час Rakudo / запуску nqp.
- Мови:
- Додана Builtin сон
- дозволяє Модифікатор 'кілька' деякі більш мульти функціональність
- Спільнота:
- Новий репо для Parrot альтернативного компілятора Toolkit, повторної реалізації РСТ в Winxed: https://github.com/parrot/PACT
- Документація:
- Ми знаходимося в процесі міграції до нашої Trac вики на http://trac.parrot.org/ до Github в https://github.com/parrot/parrot/wiki
- Packfile ПМК документація була оновлена
- Тести:
- Виберіть PMC тести поліпшені, щоб передати без Linuxy платформ
<Літій> Оновлений знімок до версії 1.3.0
Що нового у версії 3.6.0:
- Core:
- Class.add_vtable_override тепер дозволяє перезаписувати перевизначення
- Цілі, поплавці й рядки тепер можуть бути збережені в лексичних змінних. Раніше тільки ПВК можуть бути збережені в лексичних.
- VTABLE_substr був видалений. VTABLE_substr_str був перейменований в VTABLE_substr
- Додано новий тип PackfileView PMC, намічена заміну застарілого Eval РМС.
- Повідомлення про помилки на Unicode Win32 тепер коректно працюють.
- Витік пам'яті в МВКС була виправлена.
- Мови:
- Winxed мігрувала до Github: https://github.com/NotFound/winxed
<Літій> The is_integer віртуальні таблиці на струнних PMC тепер працює для всіх струнних кодувань.
<Літій> The snaphost з Winxed в комплекті з папугою був оновлений до версії 1.0.0
Що нового у версії 3.5.0:
- Core:
- Parrot_PMC_destroy, Parrot_PMC_mark і Parrot_PMC_invoke були видалені з розширення API громадськості.
- МИНУЛЕ тепер має типи вузлів ПОВЗ :: Stmt, підтримує багаторазові тимчасові регістри.
- Тестове покриття при вкладенні і розширений інтерфейс тепер принаймні, 95%.
- Знімок Winxed тепер включений в ядрі Parrot для полегшення написання ядра Parrot інструменти з більш високого рівня, ніж мова PIR.
- Мови:
- Покращена час компіляції область пошуку.
- долучення "з використанням простору імен 'заяву.
- Класи і функції компілятора тепер живуть в Winxed ;. Імен компілятора
- Тести:
- Тестовий набір Джгут Parrot тепер розуміє змінну оточення HARNESS_TIMER. Установка його істинного значення, будуть показані результати синхронізації для тестового прогону.
- Тести IPv6 тепер паралельне тестування доброзичливим.
Що нового у версії 3.4.0:
- Core:
- покоління Марк і стрілоподібності збирач сміття є новим значенням за замовчуванням.
- Parrot тепер отримує ентропію від основної операційної системи.
- Підсистема NCI тепер підтримує 8, 16, 32 і 64-бітових цілих чисел.
- Підсистема NCI тепер підтримує & Quot; довгий довгий & Quot; і & Quot; довгий подвійний & Quot; підписів. Не всі платформи / компілятори підтримують ці нестандартні типи, так що розробники застерігають взяти до відома, що їх використання знижує портативність.
- Багато функцій більш OpenGL в прив'язок Parrot OpenGL доступні, які вимагали вищезгадані підпису.
- байткода пов'язані вкладення функції API переїхав в SRC / вставляти / bytecode.c.
- Мови:
- Використовуйте 'за допомогою EXTERN' для імпорту модуля.
- Покращено етап 0 Приставка ++ і -. Оператори
- Дозволити "нуль" в умовний оператор.
- Кілька прикладів будуть оновлені.
- Спільнота:
- Google Summer Кодексу Bonding період йде добре. Студенти в основному робиться з їх класами і багато коду буде текти найближчим часом.
- Документація
- Більш введень РСТ можна знайти за адресою. Http://github.com/benabik/cish
<Літій> The --gc-ясельного розмір аргумент командного рядка був доданий.
Що нового у версії 3.3.0:
- Core:
- ІСА і isa_pmc віртуальні таблиці тепер можуть бути перекриті з PIR
- IMCC має новий покращений зовнішній інтерфейс
- Новий IMCCompiler PMC додає прототип PDD31-так функціональність для укладачів PIR і PASM
- Новий --with-LLVM варіант configure.pl, який буде посилатися на LLVM, якщо він доступний
- Спільнота:
- Parrot Virtual Machine був прийнятий в Google Summer Кодексу 2011
- Екосистема:
- Розелла додає стабільний & Quot; Event & Quot; бібліотека для реалізації публікації / підписки механізм
- Тести:
- Тест охоплення extend_vtable підсистеми була значно збільшена
Що нового у версії 3.2.0:
- Повна підтримка Юнікоду на Linux і Win32.
- Новий Generational GC реалізований. Щоб включити його запустити configure.pl --gc = GMS.
- Тепер операційні визначення семантично розібраний. Це відкриває нові можливості для майбутніх оптимізацій ядра папуг.
- Заява перетворити '.param' PIR systax.
- ПВК реалізована для доступу до буферних низького рівня, які відокремлюють подання від покажчиків.
- Додана підтримка 'довгий подвійний', 'довгий довгий', і 64-біт StructView.
- В math.h інструменти, доступні для Inf / NaN.
- Підпис ПВК використовуються pervasively.
<Літій> Опція конфігурації --cxx зникає.
Що нового у версії 3.1.0:
- Виключення ПВК тепер підкласи з PIR
- IPv6 тепер підтримується і протестований
- Додана функція Parrot_ext_try розширити API (експериментальний), щоб забезпечити реалізацію спробувати .. ловити construcs в розширеннях C.
- Тепер у нас є бібліотека YAML під назвою YAML :: Крихітний, порту YAML :: Крихітка з Perl 5
- Застарілі / експериментальні функції тепер зберігаються в api.yaml в зручному для синтаксичного аналізу формату, що дозволить з використанням автоматизованих засобів легкий доступ до цих даних. Це замінює DEPRECATED.pod, який більше не існує.
- Поліпшення GC затримка
- Підвищення продуктивності GC на системах з низьким рівнем пам'яті
- Поліпшення packfile анотацій пошук складності
- Видалення невикористаного коду і коду на основі SVN
Що нового у версії 3.0.0:
- Core:
- Нове вкладення API доступний в & Quot; папугою / api.h & Quot; і задокументовані у Документах / PDD / pdd10_embedding.pod.
- Packfile ОНК були перероблені і тепер можуть бути використані для виробництва працездатну байткод.
- Packfile код маніпуляції в даний час кидає Embedder дружніх винятків, а не друкувати подробиці помилки безпосередньо в потік помилок.
- Підтримка Unicode для файлів IO, змінні оточення, імена програм, а також параметри командного рядка була покращена.
- Експериментальний GDB досить-принтери в інструменти / розробника для Parrot струнами і ОНК тепер доступна. (GDB 7.2 або більш пізньої версії і Python є обов'язковими для заповнення)
- c2str.pl і pmc2c.pl поліпшення призведе до помітно швидше будувати.
- Помилки в нашому Digest :: бібліотеки SHA256 і розрядними, пов'язаних з динамічними OPS фіксували студента GCI Нолан Lum. І тепер коректно працюють на 32 і 64-бітових систем.
- Спільнота:
- дерево-оптимізація студент GSoC Тайлер Л. Кертіс вступив в гніздо і тепер живе в http://github.com/parrot/tree-optimization.
- Оперення тепер живе в http://github.com/parrot/plumage і встановлюються.
- Різдво протікала відповідно до графіка. Команда Parrot Не бере кредит для цієї події.
- Документація:
- генерація HTML документація була переписана і значно спрощена.
- Ми поліпшили документацію в Документах / проекту / git_workflow.pod про збереження розвилки parrot.git в синхронізації.
- Переклади наших README на різних мовах в даний час в каталозі Docs / трансляції, завдяки Google Code-In студентів.
- Тести:
- Кращий спосіб написати & Quot; TODO & Quot; тести з Test Папугу :: More був реалізований студент GCI Фернандо Бріто.
- Значне збільшення тестового покриття багатьох основних ПВК, динамічних ПВК і динамічних опкодамі в результаті GCI і Interpid студентів вона приваблювала.
- Джонатан & Quot; Duke & Quot; Літо налаштувати Debian Linux x86_64 і sparc32 курців в ПКУ Compile Farm, який постійно доповідати диму з різними варіантами конфігурації і компіляторів. Спасибі, ПКУ!
- перевірка Makefile залежностей тепер автоматично тестуються, що призводить до більш надійної паралельної збірки.
- Випробування покриття були покращені для платформ з і без Devel :: Обкладинка.
Що нового у версії 2.11.0:
- Just In Time генерації кадрів рідної виклик з використанням LibFFI.
- PIR ор find_codepoint більше не експериментальна, вона тепер підтримується.
- Кілька громадських функцій в libparrot були доведені до стандартних угод про імена.
- Покращена реалізація пов'язаного списку в GC.
- set_addr опкод замінюється новим set_label опкодом в основних бібліотеках.
- Вилучені засуджується CodeString PMC.
- Додана близько, is_closed, читати, Readline методи сокета.
- Додана експериментальна тип MappedByteArray PMC.
- Додана Parrot_warn_experimental, щоб попередити користувача про експериментальні функцій.
- Код для зовнішнього інтерфейсу виконуваних файлів переїхав з SRC / к FRONTEND /.літій>
- Підтримка Chunked отримати в бібліотеці LWP.
- долучення & Quot; quickcover & Quot; зробити мета.
Що нового у версії 2.10.0:
- Core:
- Ми на GitHub зараз! https://github.com/parrot/parrot
- Налаштування, були зроблені створювати і тестувати підсистеми Git-залежні
- Новий ключ parrot_config 'osvers', який містить інформацію про версії операційної системи
- Оновлення до останньої nqp-гх
- Правильне виняток тепер викинуті на IO помилок читання
- складальником сміття оптимізації та виправлення витоків пам'яті
- Застарілі кодування OPS були видалені
- Налаштування системи навчилися виявляти IPv6
- В mk_language_shell і create_language сценарії ще не були перенесені на Git.
- Документація:
- Як використовувати Git для роботи на Parrot
- Git Термінологія
- Тестування:
- Більш широке висвітлення на :. Рядок, FixedBooleanArray, PMCProxy, LexPad
- Спільнота:
- MacPorts portfile оновлений до версії 2.6.0
- Пакет Fedora для PL / Parrot (PostgreSQL-plparrot) був створений Цей пакет дозволяє писати збережені процедури для PostgreSQL в PIR або Rakudo Perl 6 http://pl.parrot.org
- Parrot Foundation об'єднується з Perl Foundation і бере участь в Google Code-В 2010 році.
Що нового у версії 2.9.0:
- Core:
- папугу і Rakudo будують і тести тепер можуть працювати під профілюючого RunCore
- IPv6 тепер виявлена, закладає основу для подальшого вдосконалення мереж
- mk_language_shell.pl і create_language.pl більше не вимагає встановленого папуги
- "зворотний" метод Струнний ПВК тепер працює швидше і підтримує всі кодування
- Покращення і спрощень у внутрішній обробки рядків
- долучення API для додавання рядків в дс кореневої набір
- Прискорити ога, зіЬзЬг, індекс і порівняння рядків опкоди
- Тестування:
- & Quot; зробити дим & Quot; підтримує паралельне тестування шануючи TEST_JOBS
- Додані тести для оправи PMC, StringBuilder PMC, ByteBuffer PMC, mk_language_shell.pl, create_language.pl
- Fixed & Quot; Configure.pl & Quot; про відсутніх тестів
- Parrot і Rakudo Perl 6 тепер мають доступ до ПКУ Compile Farm
- Тестування на Darwin / КПП
- Git міграції:
- Більшість інструментів розробника були перенесені на Git
- Більшість розробників документації були написані для Git
- Платформи:
- Parrot тепер може бути побудований на Minix
Що нового у версії 2.8.0:
- Core:
- вбудовуваними хеширования і функції порівняння
- розподіл Hash пам'яті переїхав з системи Танос до ледачим виділеного
- Уникав нескінченна вилов винятків, вмираючи від виключення
- Деякі SVN виправлення
- Додана перевірка на наявність дублікатів записів в віртуальні таблиці ОНК
- Будівництво Parrot з Perl 5.12 і GCC-4.5 / г ++ - 4.5
- Усунуто мотлоху залишилося після dynops_mapping
- Покращена кодування і рядок кодування
- Поліпшення організації програм по репозиції її & Quot; інструменти / побудувати & Quot; і & Quot; інструменти / реліз & Quot;
- Реалізована Виняток клон функція віртуальні таблиці
- Додана експериментальна функція Parrot_getpid і GETPID метод
- - командний рядок дс-пороговий аргумент доданий, яка контролює% пам'яті даремно на GC
- Закритий багато квитків
- Тестування:
- Додані більш основні PMC тести
- переставлені деякі тести з охопленням C
- Тепер у нас є тліти тому, в http://smolder.parrot.org. Подавати звіти з & Quot; зробити дим & Quot;
- Реалізація skip_all в тесті Папугу :: Більше завершено
- GitMigration:
- Налаштування тестового майданчика для GitHub Trac плагін в http://mksig.org/trac/
- Код Trac плагін на GitHub на http://github.com/cotto/github-trac
- Parrot тепер відбивається на GitHub в http://github.com/parrot/parrot
- Укладачі:
- Виправлена проблема з IMCC ЯВУ на відміну load_bytecode між завантаженням ПКТ і компіляції PIR
Що нового у версії 2.7.0:
- Core:
- прибирань в packfile і заморожування / відтавання обробки
- Хеш оптимізації, які покращують запуск HLL і час роботи
- Як завжди, багато виправлень помилок та інших оптимізацій
- Час:
- Деякі бібліотеки часу виконання прибирань
- Тестування:
- Додані додаткові тести, щоб поліпшити покриття
- Новий тест codingstd для документації в .pmc файлів
- Документація:
- Додана документація до .pmc файли (деякі до цих пір відсутня, але заголовки на місці)
- Загальні поліпшення в документації і доведення до сучасних
- NQP-гх:
- Оновлена версія включена від http://github.com/perl6/nqp-rx включає в себе поліпшення швидкості
Що нового у версії 2.5.0:
- Core:
- Додана ByteBuffer ПМК, щоб дозволити пряме маніпулювання байт
- Модифікований деякі функції PMC віртуальні таблиці, щоб зменшити складність, спростити охоплення.
- Модифікована ПОВЗ генерувати символічні константи PASM в виході PIR.
- Загальні STRING API прибирань
- Збільшення тестового покриття основного ОНК
- Виправлена 'вихід' опкод, добавлена CONTROL_EXIT тип виключення.
- Експериментальна 'розгортатися' опкод перейменована в 'завершити'
- NQP-гх:
- Додана належна підтримка multisubs і мультіметодов
- Виправлена обробка sigspace ** Квантіфікатор в регулярних виразів
- Додана & # x5c; електронні рядки
- Додана використання списків інверсії для списків charclass в регулярних виразів
- Платформи:
- Epel (додаткові пакети для Enterprise Linux) пакети для RHEL6.beta доступні.
Що нового у версії 1.8.0:
- Функціональність:
- дескриптора файлу ПМК Тепер виставляє код завершення дочірнього процесу, який був запущений в якості труби.
- була додана Експериментальна підтримка перекриваючи виклику в таблицю віртуальних об'єктів PIR.
- "типу" метод був доданий до PackfileAnnotations РМС.
- Нутрощі папуга угоди про виклики, PCC, були перероблені. Всі шляхи виклику тепер використовують об'єкт CallSignature для передачі аргументів і значень.
- Новий API-функція 'Parrot_ext_call' була додана для виклику в C-землі.
- Фіксований розмір аллокатор була покращена.
- Опція -I до команди 'папуга' тепер препендов елементи в шляху пошуку.
- Контекст структура була замінена атрибутами авто (context_auto_attrs філія).
- Використовуйте OSNAME визначається в автоматичному :: арку в наступних стадіях конфігурації (convert_OSNAME філія).
- Усунуто залежність від Perl 5 '% Config' в авто :: форматі (auto_format_no_Config філія).
- MultiSub ПВК Тепер stringify з ім'ям свого першого кандидата, а не від кількості кандидатів.
- Виявлення платформи на початку процесу конфігурації була покращена.
- P6object тепер підтримує .who і .where методи на protoobjects.
- Платформи:
- Виправлені помилки в порту папуги RTEMS були застосовані.
- На NetBSD, що розділяються бібліотекам в даний час використовуються.
- Продуктивність:
- Використовуйте фіксованого розміру аллокатора в контексті і CallSignature РМС.
- Безліч поліпшень малій швидкості.
- Документація:
- Значення 'р' означає, що в NCI функції підпису виклику було уточнено.
- Інструменти:
- Заглушка для нової мови, як створені mk_language_shell.pl, тепер покладається на ПІР на основі інструментів, які замінюють інструменти Perl 5 на основі.
- Бібліотека Configure.pir був доданий.
- Бібліотека distutils.pir був доданий.
<Літій> Файли, встановлені 'зробити установку-DEV' тепер покриті 'зробити установку' а.
Експериментальні OPS 'вибірки' і 'оживляти' були додані <літій>.
<Літій> The 'lineof' метод на CodeString об'єктів в даний час попередньо обчислює номер рядка інформації, щоб бути більш ефективним на змінної ширини закодованих рядків.
Що нового у версії 1.5.0:
- Core:
- Прибрані дещо застарілі функції і функції
- Вилучені BSR, JSR, branch_cs і RET опкоди
- Вилучені глобальна система стеки
- Змінено OPS формат файлу, щоб включити явну преамбулу
- Змінено все & Quot; новий '' ітератора & Quot; інструкції в "ІТЕР" інструкції
- Вилучені опції configure.pl для вказівки непрацюючих ядер GC
- Вилучений код unexecuting, як знайдений Coverity
- Покращення в Parrot отладчиков
- Додана експериментальна структура фіксованого розміру аллокатор до GC
- Додана експериментальна ледачим розподіл арени до GC
- Вилучені неіснуючої об'єкт PASM1 компілятора
- перероблений хеш, ключі та ітератори
- долучення & Quot; corevm & Quot; зробити мета побудувати Parrot без всіх бібліотек підтримки
- Вилучені типу Random ПМК і доданий в & Quot; рандів & Quot; dynop
- Оптимізація і Удосконалення генератора NCI Thunk
- Новий файл включає libpaths.pasm
- Укладачі:
- Платформи:
- Покращена підтримка виявлення Fink і MacPorts
- Оновлені пошукові каталоги для бібліотек
- Документація:
- & Quot; Parrot Керівництво розробника: PIR & Quot; випущений видавцем і доступні для покупки
- Покращена документація про Parrot отладчиков
- Оновлення PGE Документація
- Різне:
- Додані тести
- Виправлення коду, документації та стандартів
<Літій> Кілька .local з таким же ім'ям і інший тип тепер помилка на МВКС.
Що нового у версії 1.4.0:
- Core:
- Ключ і Ітератор рефакторинг
- Основні поліпшення pbc_to_exe генерується швидкість коду
- Новий & Quot; Нескінченний Пам'ять & Quot; GC ядро для демонстраційних цілей
- gc_debug RunCore і GC, пов'язаних з гайзенбаґ виправлення
- Усунення розширення змінної в parrot_config
- аргументи CLI обробляються як Unicode за замовчуванням
- Істотні оптимізації в NCI
- Parrot грунтується на Win64
- Хеши може використовувати власні типи в якості ключів і значень
- Виправлена встановлений pbc_to_exe
- Спрощення коду PMC покоління
- Поліпшення GC інкапсуляція і документація API
- Документація:
- Список кандидатів для вбудовування API (Docs / embed.pod)
- PIR книга відправляється видавця
- Тестування:
- Кілька перетворення тесту Perl до чистого PIR.
- Стандарти C відступу кодування тест
- Покращено тест охоплення коду прикладу
- Застарілі:
- Видалення правил PGE: & # x3c; & # нуль x3e; & # X3c; терпіти невдачу & # x3e; & # X3c; зр & # x3e; & # X3c; л & # x3e; & # X3c; & # ГТ x3e; & # X3c; точка & # x3e;
- Видалення методів PGE: .text .item .result_object
- Deprecation більшості dynops
- Різне:
- Почала OpenGL :: бібліотеки Math; OpenGL палітурки і бібліотека відмічені експериментальна
- локалізувати і consting виправлення
поліпшення
<Літій> Багато пам'яті і витоку пов'язані з потоковими підключений
Коментар не знайдено