Parrot 0.6.3

grinder on 2008-06-17T22:01:00

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

Parrot 0.6.3 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.6.3 News:

  • Specification
    • updated pdd09_gc.pod
  • Languages
    • Cardinal:
      • dramatically improved parsing speed
      • added support for defining and instantiating classes
      • started fleshing out the builtin class hierarchy
      • added support for hashes and arrays
    • Chitchat: added the start of a smalltalk compiler
    • Pheme: updated to match PGE changes
    • Pynie: return statement, other minor updates
    • Rakudo:
      • added working list and hash contexts
      • added 'return' statements
      • added => pair constructor
      • added ?? !! ternary
      • added Range, range operators, Complex
      • added common List, Hash methods
      • refactored base classes
      • added Mutable, Perl6Scalar classes
      • added type-checking, is readonly/rw/copy for parameters
      • added make localtest, docs/spectest-progress.csv
      • fix named unaries
    • Squaak: implement return statement
    • Tcl: updated control flow exceptions to use new builtin types
  • Compilers
    • All tools converted to P6object metamodel
    • PGE:
      • is now a zero-width match
      • reduced backtracking to improve parsing speed
    • PCT:
      • added "return" PAST.op node type for subroutine returns
      • added "keyed_int" scoping to PAST::Var
      • fixed calls to closures
      • automatically transcode 7-bit unicode to ascii for faster processing
    • NQP: added "return" statement, ?? !! ternary operator
  • Configuration
    • expanded step gen::opengl
  • Implementation
    • updated function and macro names to match pdd09_gc.pod
    • removed Super PMC
    • add ".namespace []" as alternative to ".namespace"
    • "make codetest" target runs standard coding tests
  • Miscellaneous
    • added P6object class for Perl 6 interfaces to objects in Parrot
    • ported OpenGL/GLU/GLUT bindings to Win32, BSD, and more Mac OS X variants
    • generate OpenGL/GLU/GLUT bindings by parsing system headers
    • new OpenGL example shapes.pir, covering basic OpenGL 1.1 / GLUT 3 APIs
    • new float4.pir structure-packing benchmark
    • reduced memory use for variables
    • improved constant string caching
    • made code g++ and gcc (with optimizations) safe
    • the usual collection of bugfixes and optimizations

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

Enjoy!