[Changes for 6.0.10 - March 5, 2005]

Pugs Internals:

* Massive -Wall cleanup.
* Some work on Pugs extension mechanisms (XS for Pugs).
* Complete reworking of the build system.
* Support for basic read, write, append I/O.
* Added system(), chmod(), chop() and chomp().
* Pretting printing now works.
* Added the beginings of a Config module.
* Ported to GHC 6.4 pre-release.
* More works on junctions.

Tests, Examples and Documentations:

* Test, tests and more tests, we now have over 1050.
* Added several tests for unimplemented features.
* Added tail recursive nested worker multisubs into fp.p6
* Hanoi.p6 has been added
* Several new junctions examples.
* Switched most documentations to the Kwid format.
* zh-cn and zh-tw translations of the Apocryphon.
* Haskell source documentation begun.
* Kwid documentation for Test.pm.

Bug Fixes:

* Fixed double-evaluation bug in say($a++).
* Fixed "@a" interpolation bug.
* Postfix -- now returns the value instead of numified value
* Bare blocks now work properly in void context {}    
* Fixed grep/map/push/unshift parsing so they are properly binOp now
* Fixed prefix function parsing bug that eats more parens than it should

[Changes for 6.0.9 - February 28, 2005]

* First Perl 6 module: Test.pm.
* First Pugs Apocryphon: docs/01Overview.html.
* More than 600 unit tests, with a comprehensive coverage.
* Relicensed under GPLv2 and Artistic2.0b5.
* New flags: --version, -v, -c.
* New examples: examples/fp.p6, examples/shuffle.p6.
* New syntaxes: ?? ::, our(), chained =>, END{}, =begin END, unless.
* New primitives: defined(), unlink(), ref(), join(), require(), int()
* New magicals: $?SUBNAME, %*ENV, &?BLOCK, &?CALLER_CONTINUATION, @*INC.
* New literals: \d1234, 0d1234, qq[], qw[].
* Interpolation in double-quoted strings.
* Hashes and subscripting.
* Bare blocks now assumes outer scope's lexical pad.
* Bare blocks in statement level is now always executed.
* Closures closes properly; errors are propagated upwards.
* A first draft of "Kwid" documentation format.
* A first draft of builtins declarations.

[Changes for 6.0.8 - February 21, 2005]

* New example code snippet: examples/quicksort.p6
* Unit tests ported from th Perl5 tree. (alin, juerd)
* Hashes, Pairs and their access methods.
* Much more robust casting between arrays, lists and hashes.
* Fixed harness output problem on older perls.
* Many Posix-based IO primitives. (ycheng)
* Precedence for builtin unary/list functions are parsed correctly.
* "unless" construct.
* New primitives: "join", "split", prefix ++ and --.
* +>> etc changed to +> etc. (juerd)
* Stacking multiple prefix and postfix operators now works.
* @*INC, &?SUB, CALLER::.
* Tests for the "perlego" dialect. (juerd)
* User-defined function applications now takes arbitary expressions.
* Deep recursion detection.

[Changes for 6.0.7 - February 18, 2005]

* Beginning of synopses-based unit tests. (hcchien)
* Two code snippets that runs: examples/life.p6 and examples/mandel.p6.
* Code literals -- "sub", "pointy" and "bare" variants all works.
* Lexical subroutine declarations via "my sub".
* The "say", "exit", "die", "time", "open", "close" primitives.
* Bool.perl now prints correct literals. (lwall)
* Blocks under void contexts now evaluates automatically.
* The "..." (dotdotdot) literal.
* Errors are propagated upward using shiftT.
* Postfix ++ and --.
* Ternary ?? ::.
* Assignment to mutable variables and to array slices.
* "loop", "for" and "if" constructs.

[Changes for 6.0.5 - February 15, 2005]

* The "rand" primitive.
* Taking references of junctions no longer create a junction of references.
* Illegal divisions are caught. (viirya)
* Chained comparison for four or more terms now works. (tmoertel)
* Collapsing for JuncOne into two sets: the "none" set and the "one" set.
* The evaluator now prints some helpful debugging messages.
* New parser logic merged from Michaud and Palmer's Perl6.grammar.
* Extra semicolon and whitespace in blocks are dealt with. (viirya)
* Space around punctiation operators is now optional.
* The Eval monad now supports shift/reset/callcc, lexical and dynamic scopes.
* Improved pretty-printing code for syntactic constructs.

[Changes for 6.0.4 - February 12, 2005]

* The "eval" primitive.
* Refactor junctive logic into Junc.hs.
* "Any" and "All" now collapses operands of the same type correctly.
* "One" now collapses into an empty set when operands contains duplicates.

[Changes for 6.0.3 - February 12, 2005]

* Formal parameters declaration and binding
* Invocant-based multimethod dispatch
* Optional(?), named(+ and ++), slurpy(*) parameters with defaulting
* Extraction of higher-order placeholder variables
* Proper semantics and extraction of @_, %_ and $_
* Global variables and subroutines: &*foo, $*bar
* Context propagation from types of formal parameters
* The "returns" / "is returns" trait
* Trailing comma and semicolons are now allowed
* Better handling of exponential primitives (viirya)
* &prefix: is now consistently added for user-defined subroutines
* Junctions are now proper sets, instead of lists masqueraded as sets
* New operators: "!!" and "nor"
* The "all" junction builder now collapses nested junctions under it

[Changes for 6.0.2 - February 9, 2005]

* User-defined subroutine (with $_ and @_ as parameters)
* Variable binding
* Context propagation
* Multimethod dispatch
* Subtype distancing and casting
* Autothreading over chained comparison and multiarg functions
* List associativity
* Array references as literals
* Flattening (slurpy) star

[Changes for 6.0.1 - February 7, 2005]

* Fix building on Mac OS X. (ingy, gugod)
* Characters in single quotes should not be escaped. (juerd)
* Add one very basic test in t/. 

[Changes for 6.0.0 - February 7, 2005]

* Initial CPAN release.
* Evaluation of most simple expressions.
* Junctions and chained comparisons.
* Interactive shell and #!/usr/bin/pugs support.
