After nearly four months of development and 3400+ commits, I'm very glad to announce that Pugs 6.2.13 is now available.
  
 Motivated by increasing use of Pugs in production, this is an extra release in the 6.2.x series, offering another 200%+ improvement in performance, comprehensive support for interoperability with Perl 5 modules, a built-in grammar engine via native perl5 embedding, and much better support for roles, classes and objects.
The web-based presence of Pugs and Perl 6 has improved as well:
Thanks again to all lambdacamels on #perl6 for building this new ship together; it is truly an exhilarating voyage. :-)
Have -Ofun!
Audrey
 Changes for 6.2.13 (r14402) - October 17, 2006 
 Build System 
- Perl 5 embedding is now enabled by default
- For Windows users, Perl 5.8.x is required
 
- Set the PUGS_EMBED environment variable to
noperl5 to disable this
 
 
- Prompting for Parrot embedding is now disabled by default
- Set the PUGS_EMBED environment variable to
parrot to enable this
 
 
- Support for compiling using GHC 6.6
- GHC 6.4.1+ is still supported, but 6.6 will be required in the
next release
 
 
 Feature Changes 
 Interactive Shell and Command-Line Flags 
- New pugs -d flag to display a trace for debugging
 
- The :r command now resets the environment once, not
twice
 
- The return value of blocks, such as gather {...}, is
displayed correctly
 
-  $_ is no longer clobbered with the result of each
expression's evaluation
 
 Perl 5 Interoperability 
- Arrays and Hashes now round-trip from Pugs to Perl 5 land and
back
 
- Importing functions from Perl 5: use perl5:CGI <header
param> 
 
- Passing unboxed values across runtimes no longer leaks
memory
 
- When embedding Perl 5.8+, Unicode flag is now on for
Pugs-to-Perl5 strings
 
-  eval($str, :lang<perl5>) now accepts non-ASCII
characters in $str 
 
 Lexical Syntax 
- Capture literals: \($bar: 1, 2, 3, named => 4) 
 
- Here-docs now work as specced; also warns against inconsistent
indentation
 
- Interpolation of chained calls: "$foo.meth.meth.meth.meth()" 
 
- List comprehension: for 0 < list(@x) < 10
{...} 
 
- Named character escapes: "\c[LATIN CAPITAL LETTER
Y]" 
 
- New grammatical category term:, separated from the
prefix: category
 
- New magical variables: $?COMPILER and
$?VERSION 
 
- Parse for LABEL: STMT, although it's currently
treated the same as STMT 
 
- Pod directives: =begin/=end and =for now
terminate without =cut 
 
- Pod variables: $=FOO and @=FOO give you
access to the Pod section FOO
 
- Quote adverbs no longer take non-parens brackets:
rx:P5{...} is valid again
 
- Shell-like quoting rules implemented for << $x "qq"
'q' >> 
 
- Signature literals: :($foo is copy = 42, $, @) 
 
- Support for UTF-8, UTF-16 and UTF-32 encoded source files
 
- Support for backquotes and qx/.../ for capturing
external command output
 
- User-defined infix associativity: sub infix:<foo> is
assoc('right') {...} 
 
-  "\123" and "\03" are now errors; write "\d123" and
"\o03" instead
 
-  $::x now means exactly the same a $x,
instead of $*x 
 
-  %h<> now means %h{} -- the entire hash,
not the empty string as key
 
-  ($::('x')) with two adjacent closing parens now parses
correctly
 
-  0_123_456 now parses as 0d123456, not an
error
 
-  1<2> is now a fatal error: Odd number of
elements in Hash
 
-  q() and qw() with parentheses are parsed as
functions, not quotes
 
 Declarators and Operators 
- Argument interpolation via prefix | and
|<< 
 
- Binding to qualified uninitialised symbols:
&fully::qualify := sub {...} 
 
- Contextual variables are now declared with my $x is context, not env $x 
 
- Hyperised reduce operators: [>>+<<] and
[\>>+<<] 
 
- Implicit invocation assignment: .= uc is parsed as
$_ = $_.uc 
 
- Mid-block redeclaration no longer allowed: my $x; { $x = 1;
my $x = 2 } 
 
- Negated comparison operators: !eqv, !=:=
etc; !~~ replaces !~ 
 
- New infix comparison operators: === and
eqv 
 
- New infix non-short-circuiting boolean AND operator:
?& 
 
- Nullary reduction of builtin operators gives identity values:
[*]() === 1 
 
- Postfix operators can be called with a dot: .++,
$x.++, $x.\ ++ 
 
- Prefix = now iterates on arrays as well:
=@array 
 
- Short-circuiting chained comparison: 1 > 2 >
die('foo') no longer fails
 
- Smart matching against code objects: $obj ~~ { 1 > $_
> 5 } 
 
- Smart matching against implicit invocation: $obj ~~ .meth, $obj ~~ .[0] 
 
- Typed constraints on autovivification: my Hash $x; $x[0] =
1 now fails
 
- Typed declarations: my Dog $fido, my T ($x,
$y) 
 
-  * is now always a term, never a prefix operator
 
 Blocks and Statements 
- Implicit invocation in when: when .true {...}
, when .<key> {...} 
 
- Listops in conditions no longer consume the block: for say
{...} 
 
- Loop topics are not forced into rw: for 1..3 { $_++ }
now fails correctly
 
- New &break and &continue primitives
for use within when blocks
 
- New &leave primitive for exiting from the
innermost block
 
- New postfix given statement modifier: .say given
foo() 
 
- Support for FIRST, NEXT, LAST loop
control blocks
 
- Support for START, PRE, POST,
KEEP, UNDO, ENTER, LEAVE
blocks
 
- Support for repeat blocks: repeat {...} while 1,
repeat while 1 {...} 
 
- Support for the &each list interleaver: for
each(@a; @b) -> $x, $y {...} 
 
- The for loop no longer double-flattens lists: for
%h.pairs -> $p {...} 
 
- Topicalisers for if, else, while,
given blocks: if EXPR -> $x {...} 
 
- Topicalisers for postfix for loop: -> $x {...}
for 1,2,3 
 
-  &last and &redo now work in
repeat {...} and loop {...} blocks
 
-  &take no longer flattens array literals: take
[1,2,3]; 
 
-  &take now works in functions called from within a
gather {...} block
 
-  BEGIN(...), END(...), etc., are now parsed
as calls, not syntax errors
 
-  END {...} in .pm files are no longer ignored
when executed directly
 
-  INIT {...} now works correctly inside eval "..." 
 
-  do {...} is now a loop block that takes standard loop
controls
 
-  do {...} with statement modifiers is explicitly
disallowed
 
 Regexes and Grammars 
- Anonymous tokens and rules anchor on both ends: 123 ~~
token{2} is false
 
- New s[...] = EXPR and s[...] = .meth syntax;
s[...][...] is deprecated
 
- New tr/// syntax for transliteration; y///
will not be supported
 
- Pugs::Compiler::Rule (PCR) replaces Parrot/PGE as the default
engine
 
- Support for :c/:continue, <prior>,
and much more: see PCR's ChangeLog
 
-  $(), @() and %() parse correctly
as $$/, @$/ and %$/ 
 
-  /.../ matches $_ under Int, Num and void
context in addition to Bool
 
-  m:g/(1)|(2)/ now returns only successfully matched
subcaptures
 
 Modules and Routines 
- Allow space-separated adverbial named arguments: f( :x<foo> :$y :!z ) 
 
- Multi-dispatching now handles named, slurpy and optional
arguments
 
- Multi-dispatching now handles parenthesized expressions as
arguments
 
- Named arguments with no matching parameters is now an
error
 
- New &c.call($capture) method to call without a
caller frame (similar to Perl 5's goto &sub, but it
returns)
 
- New &c.signature method to get a Signature object
from a Code object
 
- Parse for the proto routine modifier: proto method
foo ($x) {...} 
 
- Precompiled .pm.yml files with mismatching AST version
will no longer load
 
- Support for user-defined unary and optional-unary prefix
macros
 
- The main package is now ::Main, not ::main
 
-  &?CALLER_CONTINUATION is now fully reentrant
 
-  &yield in coroutines works correctly within loop
blocks
 
-  sub ($x = 0 is copy) no longer allowed; say sub
($x is copy = 0) instead
 
-  sub f ($x is lazy) {...} no longer evaluates $x more
than once
 
-  sub f (@x?) {...}; f() now sets @x to
[], not [undef] 
 
 Classes and Objects 
- Attribute-like method call syntax: @.method(1),
$.method: 2, 3, 4 
 
- Class attributes: class C { my $.x is rw } 
 
- Class name literals are now term macros, not prefix
functions
 
- Compile-time self-mixin no longer allowed: role A does
A 
 
- Default initialiser expression for attributes: class C {
has $.x = 123 } 
 
- Dot attributes are now method calls: @.x is the same
as @(self.x) 
 
- Dynamic method calls: $obj.$meth 
 
- Hyperised method calls: $obj.>>meth 
 
- Quantified method calls: $obj.*meth,
$obj.+meth and $obj.?meth 
 
- Reopening classes: class C is also {...} 
 
- Role mixins: role R {...} class C does R {...} 
 
-  $?SELF is gone; write self instead
 
-  BUILDALL/DESTROYALL trigger once per class even with
diamond inheritance
 
-  does R and is C statements in class body now
evaluate in compile time
 
 Built-in Primitives 
- New &HOW, &WHAT and
&WHICH functions replace &meta,
&ref and &id 
 
- New &VAR macro to force lvalue evaluation of an
expression
 
- New &comb function, a dual to &split
but matches the wanted parts
 
- New &crypt function to create one-way digest
strings
 
- New &fork function to create a new process
 
- New &printf function for formatted printing
 
- New "emeta function for escaping strings
 
- Support for %b in formatted printing
 
- The &system function no longer dies when the
command does not exist
 
- The .as method is renamed to .fmt for
formatted printing
 
- The .perl method now returns Unicode strings
 
 Bundled Modules 
 New modules 
  ext/CGI/  
- A new as_yaml method to dump CGI parameters as
YAML
 
- Allow initializing the CGI object with a hash of
parameters
 
- New Dump function adapted from Perl 5's CGI.pm
 
- New basic tests for escapeHTML and
unescapeHTML, which were broken
 
- New tests for PATH_INFO 
 
- Only send the Content-Type: header if we actually have a
content-type
 
- Only send the Status: header if it's a redirect, or if it's
explicitly added
 
- Refactored into an OO-only module. N.B.: this breaks backwards
compatibility!
 
- Some work on charset handling, though a charset method
is still missing
 
- The content_type method is renamed to type
for compatibility
 
- The cookies attribute is renamed to cookie
for compatibility
 
  ext/HTTP-Server-Simple/  
- The old non-standard ./method syntax has been replaced
with self.method 
 
  ext/Rosetta/  
- Significant updates to the lib/Rosetta/SeeAlso.pod
documentation
 
  ext/Set-Relation/  
- Renamed from ext/Relation/
 
- Beginning of separate Set::Tuple and
Set::Relation classes
 
  ext/Test/  
- Converted Test.pm documentation from Kwid to Pod
syntax
 
- The eval_ok and eval_is functions are gone;
use is eval instead, which runs its string in the current
lexical scope rather than in Test's (which is usually what you
want)
 
 Test Suite 
  util/prove6  
- Can now run only a portion of the test suite, or even a single
file
 
- Original shell script rewritten in Perl 5 for improved
portability
 
- Support for multiple Pugs backends and multiple Perl 6
implementations
 
  util/smartlinks.pl  
  util/smokeserv/  
- See the SYN links on http://smoke.pugscode.org/ for
this in action
 
- Smoke client now uploads raw .yml results as well as .html 
 
- The smokeserver now annotates the spec with test results using
smartlinks
 
  t/  
- All tests now begin with use v6-alpha; instead of
use v6; 
 
- Many, many more smartlinks have been added into the spec
 
- Programs and modules in examples/ are
tested for syntactic correctness
 
- Tests in t_disabled/ are merged back into the main test suite
 
-  t/02-test-pm/
created to ensure that Test.pm works as advertised
 
-  t/blocks/ renamed
from t/subroutines/
 
-  t/closure_traits/
created to test closure traits (FIRST, LAST, etc.)
 
-  #!/usr/bin/pugs is gone from all test files
 
-  eval_ok and eval_is are now ok eval
and is eval, so that eval'd strings will be run in the
current lexical scope
 
 Examples and Utilities 
  examples/  
-    
  - All Perl 5 programs have been renamed from *.p5 to *-p5.pl 
 
-    
  - All Perl 6 programs have been renamed from *.p6 to *.pl 
 
- All references to them, except in talks, have been likewise
updated
 
  examples/games/dispatch_quiz.pl  
- A game to test your knowledge about Perl 6's multi-dispatch
system
 
  misc/runpugs/  
- A web teminal for running an interactive Pugs shell on the
web
 
- WebTerminal: a library for building web terminals for
interactive shells
 
- See http://run.pugscode.org/ for a live
demo
 
 Documentation 
  docs/Perl6/Perl5/Differences.pod  
  docs/Perl6/Spec/  
  docs/Pugs/Doc/  
  docs/talks/extraction.xul  
- Slides from Nathan Gray's Practical Extraction with Perl
6 talk
 
 Perl 6 on Perl 5 
  perl5/Pugs-Compiler-Perl6/  
- The v6.pm implementation of Perl 6 now handles ./pugs -CPerl5 commands
 
- See its own ChangeLog for more information
 
  v6/  
- A new subproject to write a Perl 6 compiler in Perl 6
 
- Bootstrapped from the v6.pm compiler on the perl5
runtime
 
- See its own ChangeLog for more information
 
 Experimental projects 
misc/pX/Common/P5_to_P6_Translation/
- Converts Perl 5.9.4+'s YAML syntax tree into Perl 6
 
- Handles regexes, arrays, hashes and many builtin functions
 
- See its own documentation for more information
 
misc/pX/Common/convert_regexp_to_six.pl
- Converts Perl 5 regex into Perl 6
 
- See its own documentation for more information
 
  misc/pX/Common/redsix/  
- An Perl 6 implementation on Ruby 1.9+
 
- See its own documentation for more information