On behalf of the Parrot team, I'm proud to announce Parrot 4.11.0, also known as "All together - Happy Birthday Lovebird". Parrot is a virtual machine aimed at running all dynamic languages.
Threads are considered experimental. There are a known GC bugs when running large threads on darwin and sometimes linux. There are no known problems when running large single-threaded programs.
Reading from shared variables is transparent, writing must be done via scheduled updater subs on the owner thread.
You can use the API without using native OS threads by configuring --without-threads.
Parrot 4.11.0 is available on Parrot's FTP site, or by following the download instructions. For those who want to hack on Parrot or languages that run on top of Parrot, we recommend our organization page on GitHub, or you can go directly to the official Parrot Git repo on Github
To clone the Parrot Git repo into a directory called 'parrot', use the following:
git clone git://github.com/parrot/parrot.git
If you want it to be in a directory other than 'parrot', then just give that as a second argument to clone:
git clone git://github.com/parrot/parrot.git parrot_foo
Parrot 4.11.0 News:
- Core + Parrot now supports fast and lightweight OS threads, based on Nat Tucks's initial GSoC work on green threads and then Stefan Seifert's extension to true parallel OS threads as hybrid threads. See http://wknight8111.blogspot.co.at/2010/08/gsoc-threads-chandons-results.... and http://niner.name/Hybrid_Threads_for_the_Parrot_VM.pdf Summary: http://perl6advent.wordpress.com/2012/12/11/day-11-parrot-threads/ + New parrot cmdline option --numthreads + Export new dynpmc_class_
types [GH #870]. + Changed core_ops library format and ops2c to contain the PBC_COMPAT only, not the parrot version triple. Removed the duplicate PARROT_DYNOP_CORE_INIT cpp definition in include/parrot/oplib/core_ops.h, use only PARROT_CORE_OPLIB_INIT from config.h + Store PBC_MAJOR and PBC_MINOR in the config hash, stored by auto::revision + Added getprotobyname method to the Socket PMC - Documentation + Marked unused API parameters + Install man pages for all binaries - Languages + nqp-rx tests updated from perl6/nqp-rx.git, and enabled to run on make test - Platforms + More compilation fixes on Windows without working mt.exe or ranlib=rem, enable smoking without git binary. - Tools + Re-enabled pbc_dump -h --header-only + Improved pmc2c, added more UNUSED(arg) macros [GH #836]. Parrot is now almost -Wunused-parameters safe. - Tests + failing Pod::Simple pod_todo.t tests are now skipped + added nqp-rx tests + removed duplicate ext/nqp-rx/t/p6regex tests + rewrote and enabled native_pbc tests [GH #394], renamed native_pbc testfiles
The SHA256 message digests for the downloadable tarballs are:
46de72022dfe521fb8c5d95453e1d091d4d20d8f7ca4f2ed0cd1420b682f20dc parrot-4.11.0.tar.gz 0632ad0ca9557df391088bddbbc2608a4503adb5679dcbe62c065a73d4ce49de parrot-4.11.0.tar.bz2
Thanks to all our contributors for making this possible, and our sponsors
for supporting this project. Our next release is 15 January 2013.