Submitted by particle on Tue, 09/15/2009 - 13:24

On behalf of the Parrot team, I'm proud to announce Parrot 1.6.0

"half-pie." Parrot

is a virtual machine aimed at running all dynamic languages.

Parrot 1.6.0 is available on Parrot's FTP

site, or follow the download

instructions. For those who would like to develop on Parrot, or help

develop Parrot itself, we recommend using href="http://subversion.tigris.org/">Subversion on our

source code repository to get the latest and best Parrot code.

Parrot 1.6.0 News:



- Functionality + Added a fixed-size structure allocator to the Garbage Collector + Added a "lazy" mode to the PObj and Fixed-Size memory allocators + Added a profiling runcore, which generates Callgrind-compatible output + Added lexical subsystem opcodes: find_dynamic_lex, store_dynamic_lex + Converted Contexts to garbage-collectable PMC structures + Created a new Context API + Enhanced the PMC allocator to automatically allocate ATTR structures - Performance + Optimized opcodes to cache the current Context for subsequent lookups + Reduced string comparisons in VTABLE_isa - Maintenance and cleanup + Began proper encapsulation of STRING API + Unified all PMC destruction functions + Unified Continuation PMC and Parrot_cont structure + Unified Sub PMC and Parrot_sub structure + Removed PMC_EXT structure + Removed PMC_Sync from PMC + Removed UnionVal from PMC structure - Bugfix + Fixed several stack-walking bugs in Garbage Collector code + Fixed bug when copying a NULL STRING, now returns empty STRING struct - Tests + Converted several Perl5 tests to PIR + Expanded test coverage of NameSpace PMC - Compilers + Made Parrot Compiler Toolkit available in the base install

Thanks to all our contributors for making this possible, and our sponsors

for supporting this project. Our next release is 20 October 2009.

Enjoy!