Parrot 0.8.0, "Pareto principle" released!

On behalf of the Parrot team, I'm proud to announce Parrot 0.8.0
"Pareto Principle." Parrot is a virtual machine aimed at running all dynamic languages.

Parrot 0.8.0 is available via CPAN (soon), or follow the download instructions. For those who would like to develop on Parrot, or help develop Parrot itself, we recommend using Subversion on our source code repository to get the latest and best Parrot code.

Parrot 0.8.0 News:

- Implementation
  + float precision expanded to 15 significant digits from 6
  + large integers autopromoted in PIR so as not to lose precision
  + improved precision of complex square root
  + exception handlers can register types of exceptions they catch
- Languages
  + Cardinal (Ruby)
    - implemented gather, take, and yield builtins
    - Range, Time, Math, GC, Kernel classes
    - many more tests
    - added a new committer
  + Markdown : new lightweight markup language
    - start implementation with PCT/NQP
  + partcl (Tcl 8.5.4)
    - Moved to its own repository: http://code.google.com/p/partcl/
  + Rakudo (Perl 6)
    - split() works with regexes
    - implemented Str.comb
    - ord() and chr() builtins
    - improved parsing of literal numbers
    - support for hyphens and dashes in identifiers
    - next() on for-loops
    - fixed floating point constant precision
    - improved namespace handling, closer to STD.pm model
    - support for exporting symbols
- Compilers
  + P6object
    - now generates classes in nested namespaces instead of :: names
    - supports class creation in caller's HLL namespace
  + PCT / PGE
    - now using true nested namespaces instead of :: names
    - cleaned up HLLCompiler interactive prompts and readline mode
    - updated to use typed exception handler registration
    - added initial support for loop control exceptions
  + PIRC
    - fixed Heredoc preprocessor
    - cleaned up Macro preprocessor
    - many code clean-ups, warning fixes and consting
    - updated Makefile for easier compilation
  + IMCC
    - Added .tailcall syntax to replace .return in tailcall context
- Examples
  + pirric (BASIC)
    - an old style line numbered Basic interpreter able to use parrot objects
    - example connecting to mysql via nci
    - example using classes to write and run an embedded Basic program
- Documentation
  + Book
    - Added chapters for PCT, PMCs, and Opcodes/Runcores
    - Expanded and improved formatting in various chapters
    - Renumbered chapters

Thanks to all our contributors for making this possible, and our sponsors for supporting this project. Our next release is 18 Nov 2008.

Enjoy!

~Particle *accelerates*

tags: