Re: Announce: Rakudo Perl 6 compiler, Development Release #94 (“коледа”)

2015-12-26 Thread Parrot Raiser
Bravo Zulu, everyone, and a well-earned rest for Jonathan.

The forecast is for scattered scepticism, with occasional outbreaks of
trolls, but there should be some positive reaction from the rest of
world.

On 12/25/15, Will Coleda  wrote:
> On behalf of the Rakudo development team, I’m proud to announce the
> Christmas release (December 2015) of Rakudo Perl 6 #94 “коледа”. Rakudo
> is an implementation of Perl 6 on the Moar Virtual Machine[^1] and the
> Java Virtual Machine.
>
> This is the Christmas release of Rakudo Perl 6. This version of the
> compiler
> targets the v6.c “Christmas” specification of the Perl 6 language. The
> Perl 6 community has been working toward this release over the last 15
> years.
> Together, we've built a language that:
>
> + Retains the core values of Perl: expressiveness, getting the job done,
>   taking influences from natural language, and pushing the boundaries of
>   language design
> + Has clean, modern syntax, rooted in familiar constructs but revisiting
>   and revising the things that needed it
> + Is truly multi-paradigm, enabling elegant object-oriented, functional,
>   procedural, and concurrent programming
> + Serves as a great glue language, allowing for easy calling of C/C++
>   (using NativeCall) and staying compatible with Perl 5 (via
> Inline::Perl5).
> + Provides composable constructs for working with asynchronous data and
>   parallel computations
> + Dramatically reforms and sets a new standard in regex syntax, which
>   scales up to full grammars - powerful enough to parse Perl 6 itself
> + Has outstanding Unicode support, with strings working at grapheme level
> + Values lexical scoping and encapsulation, enabling easy refactoring
> + Is extensible through meta-object programming, user-defined operators,
>   and traits
>
> The tag for this release is “коледа”[^2], a slavic word for an ancient
> winter
> festival that has been incorporated into Christmas. We hope you join us
> in our celebration of getting our Christmas release shipped!
>
> While we are extremely happy to ship an official Perl 6 release, this is
> not
> the end of Rakudo’s development. We will continue to ship monthly releases,
> which will continue to improve performance and our user’s experience. We’ll
> also continue our work on the specification, with feedback from the
> community.
>
> To be clear on that point, this Rakudo release is not considered the
> primary
> deliverable for this Christmas; it is the language specification, known
> as "roast" (Repository Of All Spec Tests), that is considered the primary
> deliverable.  The specification tests that define this 6.c version[^3] of
> the
> language are now frozen, and we hope it will be quite some time before we
> feel obligated to define a 6.d (Diwali) version of the language.
>
> This Rakudo release targets those tests (over 120 thousand of them), and
> passes
> them all on at least some architectures when the moon is in the right
> phase.
> But Rakudo itself is not frozen.  There is still plenty of work ahead for us
> to
> improve speed, portability, and stability.  Do not expect the level of
> perfection that you see in established products.  This is essentially a .0
> release of a compiler.  We do not claim an absence of bugs or
> instabilities.
> We do not claim the documentation is complete.  We do not claim portability
> to
> many architectures.  We do not claim that all downstream software will work
> correctly.  Think of it as a first kernel release, and now we get to build
> and
> port various distributions based around that kernel.
>
> What we do claim is that you now have a stable language specification, and
> you can enjoy getting some stuff done with Perl 6 without us breaking it
> every
> month—as long as you stick to the features that are actually tested in the
> test suite, that is.  Please note that any “feature” you discover that is
> not tested in the test suite is considered fair game for change without
> notice.
>
> Have the appropriate amount of fun!
>
> The tarball for this release is available from
> .
>
> Please note: This announcement is not for the Rakudo Star
> distribution[^4] --- it’s announcing a new release of the compiler
> and the specification. For the latest Rakudo Star release, see
> . A Christmas-based version will
> be available soon.
>
> In addition to being our Christmas release, this is yet another
> monthly compiler release; Some of the changes that are new in
> release are outlined below:
>
> New in 2015.12:
>  + Fixed size and multi-dimensional typed and native arrays
>  + Greatly overhauled module loading and installation, including handling
>precompilation at module installation time in Rakudo
>  + while/until loops can now return lists of values
>  + We now catch many more kinds of "Useless use of X in sink context"
>  + A number of convenient Unicode equivalents were introduced
>  + 

Announce: Rakudo Perl 6 compiler, Development Release #94 (“коледа”)

2015-12-25 Thread Will Coleda
On behalf of the Rakudo development team, I’m proud to announce the
Christmas release (December 2015) of Rakudo Perl 6 #94 “коледа”. Rakudo
is an implementation of Perl 6 on the Moar Virtual Machine[^1] and the
Java Virtual Machine.

This is the Christmas release of Rakudo Perl 6. This version of the compiler
targets the v6.c “Christmas” specification of the Perl 6 language. The
Perl 6 community has been working toward this release over the last 15 years.
Together, we've built a language that:

+ Retains the core values of Perl: expressiveness, getting the job done,
  taking influences from natural language, and pushing the boundaries of
  language design
+ Has clean, modern syntax, rooted in familiar constructs but revisiting
  and revising the things that needed it
+ Is truly multi-paradigm, enabling elegant object-oriented, functional,
  procedural, and concurrent programming
+ Serves as a great glue language, allowing for easy calling of C/C++
  (using NativeCall) and staying compatible with Perl 5 (via Inline::Perl5).
+ Provides composable constructs for working with asynchronous data and
  parallel computations
+ Dramatically reforms and sets a new standard in regex syntax, which
  scales up to full grammars - powerful enough to parse Perl 6 itself
+ Has outstanding Unicode support, with strings working at grapheme level
+ Values lexical scoping and encapsulation, enabling easy refactoring
+ Is extensible through meta-object programming, user-defined operators,
  and traits

The tag for this release is “коледа”[^2], a slavic word for an ancient winter
festival that has been incorporated into Christmas. We hope you join us
in our celebration of getting our Christmas release shipped!

While we are extremely happy to ship an official Perl 6 release, this is not
the end of Rakudo’s development. We will continue to ship monthly releases,
which will continue to improve performance and our user’s experience. We’ll
also continue our work on the specification, with feedback from the community.

To be clear on that point, this Rakudo release is not considered the primary
deliverable for this Christmas; it is the language specification, known
as "roast" (Repository Of All Spec Tests), that is considered the primary
deliverable.  The specification tests that define this 6.c version[^3] of the
language are now frozen, and we hope it will be quite some time before we
feel obligated to define a 6.d (Diwali) version of the language.

This Rakudo release targets those tests (over 120 thousand of them), and passes
them all on at least some architectures when the moon is in the right phase.
But Rakudo itself is not frozen.  There is still plenty of work ahead for us to
improve speed, portability, and stability.  Do not expect the level of
perfection that you see in established products.  This is essentially a .0
release of a compiler.  We do not claim an absence of bugs or instabilities.
We do not claim the documentation is complete.  We do not claim portability to
many architectures.  We do not claim that all downstream software will work
correctly.  Think of it as a first kernel release, and now we get to build and
port various distributions based around that kernel.

What we do claim is that you now have a stable language specification, and
you can enjoy getting some stuff done with Perl 6 without us breaking it every
month—as long as you stick to the features that are actually tested in the
test suite, that is.  Please note that any “feature” you discover that is
not tested in the test suite is considered fair game for change without notice.

Have the appropriate amount of fun!

The tarball for this release is available from
.

Please note: This announcement is not for the Rakudo Star
distribution[^4] --- it’s announcing a new release of the compiler
and the specification. For the latest Rakudo Star release, see
. A Christmas-based version will
be available soon.

In addition to being our Christmas release, this is yet another
monthly compiler release; Some of the changes that are new in
release are outlined below:

New in 2015.12:
 + Fixed size and multi-dimensional typed and native arrays
 + Greatly overhauled module loading and installation, including handling
   precompilation at module installation time in Rakudo
 + while/until loops can now return lists of values
 + We now catch many more kinds of "Useless use of X in sink context"
 + A number of convenient Unicode equivalents were introduced
 + Superscripts can now be used for integer powers
 + Non-digit unicode characters with a numeric value (½ and such) can now be
   used for that numeric value
 + There is a new "approximately equal" operator
 + Add support for USAGE argument help
 + Provide tau constant (also: τ)
 + Can now use channels with supply/react/whenever
 + Bool is now a proper enum
 + Supply/Supplier improvements
 + Use of EVAL now requires a declaration of 'use