Parrot 0.6.2

grinder on 2008-05-21T08:02:00

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

Parrot 0.6.2 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 or SVK on our source code repository to get the latest and best Parrot code.

Parrot 0.6.2 News:

  • Specification
    • updated and launched pdd28_strings.pod
    • updated pdd19_pir.pod
  • Implementation
    • added implementation of Rational PMC
    • simplified ops control flow syntax
    • enabled backtrace on non-glibc platforms too
    • improved some PIR error reporting
    • removed user stack opcodes (save, restore, lookback, entrytype, depth, rotate_up) (NOTE: This was scheduled to occur after 0.7.0, moved up to this release)
    • removed register stack, saveall, and restoreall opcodes
    • removed various deprecated features and unused code
  • Languages
    • Amber: retired
    • C99: grammar updated
    • Cardinal: resurrected, method calls and do blocks work now
    • Eclectus: use NQP as PAST generating code
    • Lua:
      • added big number library
      • updated to match PGE changes
      • added a bytecode disassembler & a Lua 5.1 VM bytecode translator
    • Pheme: updated to match PGE/PCT changes
    • Plumhead:
      • use NQP as PAST generating code
      • use riaxpander for macro expansion
    • Rakudo:
      • updated ROADMAP
      • conditional and loop statement modifiers
      • lots of class, object, role, and method improvements
      • Str increment and decrement
      • improved spectest reporting
      • type checking on assignment
      • regexes and grammars
      • undef and self
      • placeholder vars
    • Squaak: added to repository
    • TAP: retired
  • Compilers
    • PGE: updated to match Synopsis 5, deprecated features removed
    • PCT:
      • improve handling of register types, conversion between registers
      • improved error diagnostics
      • add 'arity' to for loops
  • Configuration
    • added step auto::opengl
    • added step gen::opengl
    • added step gen::call_list
  • Miscellaneous
    • still more optimizations and performance improvements, especially in GC
    • new libraries: OpenGL/GLU/GLUT bindings (small subset working)
    • new dump_pbc.pl utility: PBC disassembly/source code weaver
    • improved C++ compiler support
    • optimized builds work again

Gracias to all our contributors for making this possible, and our sponsors for supporting this project.

Enjoy!