Parrot 0.7.0 "Severe Macaw"

Milestone information

Code name:
Severe Macaw
Ronald Blaschke
Release registered:
No. Drivers cannot target bugs and blueprints to this milestone.  

Download RDF metadata


Assigned to you:
No blueprints or bugs assigned to you.
No users assigned to blueprints and bugs.
No blueprints are targeted to this milestone.
No bugs are targeted to this milestone.

Download files for this release

File Description Downloads

Release notes 

- Specification
  + PDD27: add multisub lookup

- Implementation
  + new concurrency implementation (see PDD25)
  + Exception PMC now captures a return continuation
  + improved PMC encapsulation (Iterator, Key, Pair)

- Languages
  + Cardinal (Ruby):
    - class variables
    - parsing improvements
    - minor additions to class builtins
    - add support for block parameters to functions
  + Lua:
    - various language fixes
    - refactor all libraries (namespace, method registration)
    - add a OpenGL binding (still incomplete)
    - lost user back trace (see ppd25 & pushaction)
  + Pipp (PHP):
    - add support for while- and for-loops
    - add support for increment and decrement
    - designate PHP 5.3 as the reference implementation
    - improve support for string literals
  + Pugs (Perl 6):
    - removed due to bit rot
  + Rakudo (Perl 6):
    - now over 2200 passing spectests
    - updated the Rakudo roadmap
    - Perl 6 multi dispatch
    - dispatch with slurpies
    - class attributes ("my $.x")
    - anonymous classes
    - OO and metaclass improvements (.WHAT, .WHICH, .WHENCE)
    - additional builtin methods and subs
    - improved make test targets and harness
  + Tcl:
    - implement [lreverse], [lsort -command]
    - allow [incr] to autovivify
    - update tclsh spec target to 8.5.3
    - fix bug in TclDict PMC, allowing ~200 more [dict] spec tests to pass
    - update 'make spectest' fudging, using TODO instead of SKIP if possible
- Compilers
  + PCT:
    - :scope('register') for PAST::Var nodes
    - allow invocant specification in attribute scope PAST::Var nodes
    - correct ordering of sub generation from POST
    - add 'loadinit' attribute to PAST::Block for block initialization
  + PIRC:
    - PIR registers now use the vanilla register allocator
    - all PASM output now uses PASM registers
    - all .locals and $registers are mapped
    - clean-up of grammar, back-end and documentation
    - implemented constant folding
    - implemented instruction selection

- Configuration
  + tests now clean up after themselves
  + improved parallel test support
  + ports/cygwin added
  + Darwin problems fixed

- Tools
  + parrot_debugger renamed from pdb, numerous tweaks

- Miscellaneous
  + IMCC cleanups
  + :vtable implies self in PIR
  + modest core speed improvements
  + Cygwin support improved
  + "say" now an opcode (was dispatched to a method; see Deprecations)
- Deprecations
  + ".pragma n_operators" is deprecated
  + old PASM register syntax (without "$") is deprecated
  + bare (unquoted) method names are deprecated
  + "#line" will be replaced with ".line"
  + ".HLL_map" syntax will change
  + ".loadlib" is now separate from ".HLL"
  + mmdvtregister and mmdvtablefind opcodes are deprecated
  + removed getfd, getclass opcodes
  + removed IMCC syntax that treated some methods as builtins
  + removed numeric get_attr and set_attr vtable entries


This release does not have a changelog.

0 blueprints and 0 bugs targeted

There are no feature specifications or bug tasks targeted to this milestone. The project's maintainer, driver, or bug supervisor can target specifications and bug tasks to this milestone to track the things that are expected to be completed for the release.

This milestone contains Public information
Everyone can see this information.