Announce: Windows MSI Installers for release 2016.01

The Windows MSI installers are now available, coming again in two versions. One installer targets x86 (32bit) platforms, and the other installer targets x86_64 (64bit) platforms (probably Windows 7 or better). Only the version for x86_64 comes with JIT enabled.
The two MSIs are available from http://rakudo.org/downloads/star/.

Posted in announce | Comments Off

Announce: Rakudo Star Release 2016.01

On behalf of the Rakudo and Perl 6 development teams, I’m happy to announce
the January 2016 release of “Rakudo Star”, a useful and usable production
distribution of Perl 6. The tarball for the January 2016 release is available
from http://rakudo.org/downloads/star/.

This is the first post-Christmas (production) release of Rakudo Star and
implements Perl v6.c. It comes with support for the MoarVM backend (all module
tests pass on supported platforms).

Please note that this release of Rakudo Star is not fully functional with the
JVM backend from the Rakudo compiler. Please use the MoarVM backend only.

In the Perl 6 world, we make a distinction between the language (“Perl 6″) and
specific implementations of the language such as “Rakudo Perl”. This Star
release includes release 2016.01.1 of the Rakudo Perl 6 compiler, version
2016.01 of MoarVM, plus various modules, documentation, and other resources
collected from the Perl 6 community.

Some of the new compiler features since the last Rakudo Star release include:

  • Chained .grep calls on Supply fixed (RT #127297)
  • Fixed interaction with perl6-debug and precompilation that resulted in an
    endless loop
  • re-enabled warning when smart-matching against a True or False literal
  • Fixed internal error when reporting certain type errors (RT #127207)
  • Fixed rare “duplicate definition of symbol” errors (RT #127107)
  • Fixed interpolating of pairs with non-key strings into signatures
  • Fixed error when smart-matching Seq against a Set (RT #127166)
  • Improved error message when smart-matching against an S///-expression
  • Fixed bad interaction between EXPORTHOW and multiple declarations (RT #126566)
  • Fixed various issues regarding precompilation
  • Improved accuracy of Complex.sqrt
  • hyper now preserves order of results, as designed
  • Range.sum on an empty, numeric Range is now 0
  • Fixed Promise.allof() with an empty list of promises (RT #127101)
  • Improved message on premature virtual method call (RT #127097)
  • Better error message for module load failures of types that are part of the setting
  • Support for Readline in addition to Linenoise
  • Initial shaped array support
  • \r\n (Carriage Return/LineFeed) is now a single (synthetic) grapheme
  • Unicode support adheres to Unicode Annex #29
  • Unicode quotes are now also allowed in regular expressions
  • Improved newline support with “use newline” and updates to IO::Handle
  • Added List.head, List.tail, List.repeated methods
  • Str.encode now allows :replacement parameter for unencodable sequences
  • Str.split now accepts multiple strings to split on
  • New Range.int-bounds returns first/last value for integer ranges
  • Auto-generated meta-ops vivified by referring to them, instead of executing
  • Illegal assignment of different Numeric values now caught at compile time
  • &nextcallee implemented, which returns the routine that nextsame would invoke
  • Many speedups

Notable changes in modules shipped with Rakudo Star:

  • Bailador: The PSGI module by default now sets p6sgi instead of psgi
  • DBIish: Many fixes
  • Digest::MD5: Updated to conform to new newline handling
  • doc: p6doc -l added. p6doc now works for most non-core docs with pod
  • LWP::Simple: Replace “as Int” with proper coercion type to fix build
  • Linenoise: Many fixes
  • MIME::Base64: Adjust to pack being made experimental
  • panda: Large number of precomp and other bug fixes.  Now depends on 6.c
  • Template::Mojo: use MONKEY-SEE-NO-EVAL
  • Shell::Command: removed “as”

There are some key features of Perl 6 that Rakudo Star does not yet
handle appropriately, although they will appear in upcoming releases.
Some of the not-quite-there features include:

  • advanced macros
  • non-blocking I/O (in progress)
  • some bits of Synopsis 9 and 11

There is an online resource at http://perl6.org/compilers/features
that lists the known implemented and missing features of Rakudo’s
backends and other Perl 6 implementations.

In many places we’ve tried to make Rakudo smart enough to inform the
programmer that a given feature isn’t implemented, but there are many
that we’ve missed. Bug reports about missing and broken features are
welcomed at rakudobug@perl.org.

See http://perl6.org/ for links to much more information about
Perl 6, including documentation, example code, tutorials, reference
materials, specification documents, and other supporting resources.
Perl 6 tutorials are available under the “docs” directory in
the release tarball.

The development team thanks all of the contributors and sponsors for
making Rakudo Star possible. If you would like to contribute, see http://rakudo.org/how-to-help, ask on the perl6-compiler@perl.org
mailing list, or join us on IRC #perl6 on freenode.

Posted in announce | Comments Off

Announce: Rakudo Star Release 2015.11 (now in beta!)

On behalf of the Rakudo and Perl 6 development teams, I’m happy to announce the November 2015 release of “Rakudo Star”, a useful and usable distribution of Perl 6. The tarball for the November 2015 release is available from http://rakudo.org/downloads/star/.

This Rakudo Star release comes with support for the MoarVM backend (all module tests pass on supported platforms).

In the Perl 6 world, we make a distinction between the language (“Perl 6″) and specific implementations of the language such as “Rakudo Perl”. This Star release includes release 2015.11 of the Rakudo Perl 6 compiler, version 2015.11 of MoarVM, plus various modules, documentation, and other resources collected from the Perl 6 community.

Some of the new compiler features since the ast Rakudo Star release include:

  • There is now an infix:<.> operator that does method calls with slightly looser precedence than the postfix unary method call.
  • New operator infix o for function composition
  • fc for Unicode-correct case folding implemented
  • grep now accepts :k, :v, :kv, :p attributes
  • Supply.throttle for rate-limiting
  • Array.push is now used for pushing one element (mostly); Array.append exists for pushing multiple values. Same for unshift/prepend
  • Basic arithmetic operations (+, *, -, /) on Range objects that shift or scale the end points while maintaining exclusions
  • The v notation now allows alphabetic components: v1.2.beta. (Incompatible because method calls on a version must be protected by \ or () now.)
  • use v6b+; notation is now recognized and enforced
  • Many built-in methods that return iterables are now much faster
  • Better error messages when comparing version strings with numbers
  • Several error messages that were lacking line numbers now include them
  • Initial shaped array support
  • \r\n (Carriage Return/LineFeed) is now a single (synthetic) grapheme
  • Unicode support adheres to Unicode Annex #29
  • Unicode quotes are now also allowed in regular expressions
  • Improved newline support with “use newline” and updates to IO::Handle
  • Added List.head, List.tail, List.repeated methods
  • Str.encode now allows :replacement parameter for unencodable sequences
  • Str.split now accepts multiple strings to split on
  • New Range.int-bounds returns first/last value for integer ranges
  • Auto-generated meta-ops vivified by referring to them, instead of executing
  • Illegal assignment of different Numeric values now caught at compile time
  • &nextcallee implemented, which returns the routine that nextsame would invoke
  • Many speedups

The Rakudo Perl 6 compiler is now officially in beta for the upcoming production release around Christmas 2015.

Please note that this release of Rakudo Star is not fully functional with the JVM backend from the Rakudo compiler. Please use the MoarVM backend only.

Notable changes in modules shipped with Rakudo Star:

  • Bailador: Add MIT License
  • DBIish: Improved Windows support
  • doc: More documentation; generated HTML is better searchable
  • Template::Mustache: Switched from LGPL to Artistic License 2.0
  • panda: Default action is no longer install; better help messages
  • Digest::MD5: Now accepts non-ASCII input (internally encodes as Latin-1)
  • LWP::Simple: Support for successful return codes besides 200
  • Shell::Command: which routine for locating executables
  • Updated docs/2015-spw-perl6-course.pdf from Nov 21

There are some key features of Perl 6 that Rakudo Star does not yet handle appropriately, although they will appear in upcoming releases. Some of the not-quite-there features include:

  • advanced macros
  • non-blocking I/O (in progress)
  • much of Synopsis 9 and 11

There is an online resource at http://perl6.org/compilers/features that lists the known implemented and missing features of Rakudo’s backends and other Perl 6 implementations.

In many places we’ve tried to make Rakudo smart enough to inform the programmer that a given feature isn’t implemented, but there are many that we’ve missed. Bug reports about missing and broken features are welcomed at rakudobug@perl.org.

See http://perl6.org/ for links to much more information about Perl 6, including documentation, example code, tutorials, reference materials, specification documents, and other supporting resources. A Perl 6 tutorial is available as docs/2015-spw-perl6-course.pdf in the release tarball.

The development team thanks all of the contributors and sponsors for making Rakudo Star possible. If you would like to contribute, see http://rakudo.org/how-to-help, ask on the perl6-compiler@perl.org mailing list, or join us on IRC #perl6 on freenode.

Posted in announce | Comments Off

Announce: Windows MSI Installers for release 2015.09

The Windows MSI installers are now available, coming again in two versions. One installer targets x86 (32bit) platforms, and the other installer targets x86_64 (64bit) platforms (probably Windows 7 or better). Only the version for x86_64 comes with JIT enabled.
The two MSIs are available from http://rakudo.org/downloads/star/.

Posted in announce | Comments Off

Announce: Rakudo Star Release 2015.09

A useful, usable, “early adopter” distribution of Perl 6

On behalf of the Rakudo and Perl 6 development teams, I’m happy to announce the September 2015 release of “Rakudo Star”, a useful and usable distribution of Perl 6. The tarball for the September 2015 release is available from http://rakudo.org/downloads/star/.

This Rakudo Star release comes with support for the MoarVM backend (all module tests pass on supported platforms).

In the Perl 6 world, we make a distinction between the language (“Perl 6″) and specific implementations of the language such as “Rakudo Perl”. This Star release includes release 2015.09 of the Rakudo Perl 6 compiler, version 2015.09 of MoarVM, plus various modules, documentation, and other resources collected from the Perl 6 community.

Some of the new compiler features added to this release include:

  • Great List Refactor (GLR) – See http://design.perl6.org/S07.html
  • All Deprecations removed in preparation for Christmas release
  • Added support for calling into C++ libraries and calling methods on C++ classes
  • New slurpy parameter, +args or +@args, to allow for one-argument style binding
  • New with/orwith/without conditionals allow you to check for .defined but topicalize to the actual value returned
  • New supply, whenever and react blocks for easy reactive programming
  • All Unicode digits can now be part of literal numbers
  • val() and allomorphic types implemented
  • Most European quoting styles are now supported
  • New $[...] and ${…} constructs allow prefix itemization
  • The .gist and .perl methods can now deal with self-referential structures

Please note that this release of Rakudo Star is not fully functional with the JVM backend from the Rakudo compiler. Support should be restored shortly.

Notable changes in modules shipped with Rakudo Star:

  • All modules fixed to work with GLR where needed
  • Panda now includes JSON::Fast and no longer precompiles to byte code
  • Terminal::ANSIColor replaces the deprecated Term::ANSIColor
  • New Perl 6 tutorial replaces original perl6 book draft

There are some key features of Perl 6 that Rakudo Star does not yet handle appropriately, although they will appear in upcoming releases. Some of the not-quite-there features include:

  • advanced macros
  • non-blocking I/O (in progress)
  • much of Synopsis 9 and 11

There is an online resource at http://perl6.org/compilers/features that lists the known implemented and missing features of Rakudo’s backends and other Perl 6 implementations.

In many places we’ve tried to make Rakudo smart enough to inform the programmer that a given feature isn’t implemented, but there are many that we’ve missed. Bug reports about missing and broken features are welcomed at rakudobug@perl.org.

See http://perl6.org/ for links to much more information about Perl 6, including documentation, example code, tutorials, reference materials, specification documents, and other supporting resources. A Perl 6 tutorial is available as docs/2015-spw-perl6-course.pdf in the release tarball.

The development team thanks all of the contributors and sponsors for making Rakudo Star possible. If you would like to contribute, see http://rakudo.org/how-to-help, ask on the perl6-compiler@perl.org mailing list, or join us on IRC #perl6 on freenode.

Posted in announce | Comments Off

Announce: Rakudo Star Release 2015.07

A useful, usable, “early adopter” distribution of Perl 6

On behalf of the Rakudo and Perl 6 development teams, I’m happy to announce the July 2015 release of “Rakudo Star”, a useful and usable distribution of Perl 6. The tarball for the July 2015 release is available from http://rakudo.org/downloads/star/.

This Rakudo Star release comes with support for the MoarVM backend (all module tests pass on supported platforms).

In the Perl 6 world, we make a distinction between the language (“Perl 6″) and specific implementations of the language such as “Rakudo Perl”. This Star release includes release 2015.07.2 of the Rakudo Perl 6 compiler, version 2015.07 of MoarVM, plus various modules, documentation, and other resources collected from the Perl 6 community.

Some of the new compiler features added to this release include:

  • Cool.substr(-rw) and &substr(-rw) now also accept a Range
  • Added trait “is required” on class attributes
  • &?ROUTINE and &?BLOCK
  • &words implemented (to completement .words)
  • Numeric comparison ops (== > etc) for DateTimes
  • samewith() now also works in subs
  • Calling the .clone method with alternate values no longer changes original
  • .grep and &grep now consume multiple elements for many-param blocks
  • ENTER phaser now can be used as an r-value

Notable changes in modules shipped with Rakudo Star:

  • Bailador: Add links to documentation
  • DBIish: Use Postgres environment variables for test configuration
  • doc: More documentation, mostly for IO-related classes and methods

There are some key features of Perl 6 that Rakudo Star does not yet handle appropriately, although they will appear in upcoming releases. Some of the not-quite-there features include:

  • advanced macros
  • non-blocking I/O (in progress)
  • much of Synopsis 9 and 11

There is an online resource at http://perl6.org/compilers/features that lists the known implemented and missing features of Rakudo’s backends and other Perl 6 implementations.

In many places we’ve tried to make Rakudo smart enough to inform the programmer that a given feature isn’t implemented, but there are many that we’ve missed. Bug reports about missing and broken features are welcomed at rakudobug@perl.org.

See http://perl6.org/ for links to much more information about Perl 6, including documentation, example code, tutorials, reference materials, specification documents, and other supporting resources. A draft of a Perl 6 book is available as docs/UsingPerl6-draft.pdf in the release tarball.

The development team thanks all of the contributors and sponsors for making Rakudo Star possible. If you would like to contribute, see http://rakudo.org/how-to-help, ask on the perl6-compiler@perl.org mailing list, or join us on IRC #perl6 on freenode.

Posted in announce | Comments Off

Announce: Windows MSI Installers for release 2015.06

The Windows MSI installers are now available, coming again in two versions. One installer targets x86 (32bit) platforms, and the other installer targets x86_64 (64bit) platforms (probably Windows 7 or better). Only the version for x86_64 comes with JIT enabled.
The two MSIs are available from http://rakudo.org/downloads/star/.

Posted in announce | Comments Off

Announce: Rakudo Star Release 2015.06

A useful, usable, “early adopter” distribution of Perl 6

On behalf of the Rakudo and Perl 6 development teams, I’m happy to
announce the June 2015 release of “Rakudo Star”, a useful and usable
distribution of Perl 6. The tarball for the June 2015 release is
available from http://rakudo.org/downloads/star/.

This Rakudo Star release comes with support for the MoarVM
backend (all module tests pass on supported platforms).

In the Perl 6 world, we make a distinction between the language
(“Perl 6″) and specific implementations of the language such as
“Rakudo Perl”. This Star release includes release 2015.06 of the
Rakudo Perl 6 compiler, version 2015.06 of MoarVM, plus various
modules, documentation, and other resources collected from the
Perl 6 community.

Other Rakudo Perl 6 Comiler changes included in this release:
https://github.com/rakudo/rakudo/blob/nom/docs/announce/2015.04.md
https://github.com/rakudo/rakudo/blob/nom/docs/announce/2015.05.md
https://github.com/rakudo/rakudo/blob/nom/docs/announce/2015.06.md

Some of the new compiler features added to this release include:

  • “0″ (0 as a string) is now True, no special-casing anymore
  • an Int() coercion type in a multi now creates two candidates: Any and Int
  • native arrays
  • starts-with/substr-eq/ends-with for comparing strings inside other strings
  • where constraints on variable and attribute declarations
  • ‘is rw’ parameters implemented for native subs (they get passed as a pointer)
  • use Foo:from<Perl5> and EVAL $code, :lang<perl5> are now supported as long as Inline::Perl5 is installed. Allows passing most of S01 spec tests.
  • NFG, NFC, NFD, Uni
  • “unit” declaration needed for blockless packages
  • Various API changes for the Great List Refactor, such as…
    •   ‘for’ loops not longer flatten; use ‘for flat’ for that
    •   .map no longer flattens, map as a listop does. Use .flatmap to get the old behavior
    •   Likewise other methods that used to flatten their invocant no longer do: all, any, one, none, unique, squish, min, max, minmax, classify, and categorize
    •   Nil no longer iterates like the empty List. Use () or Empty instead.
  • .pick($n)/roll($n) now always return lists, even when $n == 1
  • The “is cached” trait no longer works on methods, throws a NYI instead
  • Method .map should be used instead of .for
  • The REPL is strict by default now, that leaves only ‘-e’ lines to be lax
  • Implement new @*INC handling (about 30% faster startup time) (bare startup time is now below 100 ms on some machines)
  • Implemented CUnions which map to the union C type definition for NativeCall
  • Implemented HAS declarator for attributes to mark it embedded into the CStruct or CUnion
  • Lexical pragma ‘use trace’ now outputs statements on STDERR

There are some key features of Perl 6 that Rakudo Star does not yet
handle appropriately, although they will appear in upcoming releases.
Some of the not-quite-there features include:

  •  advanced macros
  •  non-blocking I/O (in progress)
  •  much of Synopsis 9 and 11

There is an online resource at http://perl6.org/compilers/features
that lists the known implemented and missing features of Rakudo’s
backends and other Perl 6 implementations.

In many places we’ve tried to make Rakudo smart enough to inform the
programmer that a given feature isn’t implemented, but there are many
that we’ve missed. Bug reports about missing and broken features are
welcomed at rakudobug@perl.org.

See http://perl6.org/ for links to much more information about
Perl 6, including documentation, example code, tutorials, reference
materials, specification documents, and other supporting resources. A
draft of a Perl 6 book is available as docs/UsingPerl6-draft.pdf in
the release tarball.

The development team thanks all of the contributors and sponsors for
making Rakudo Star possible. If you would like to contribute, see
http://rakudo.org/how-to-help, ask on the perl6-compiler@perl.org
mailing list, or join us on IRC #perl6 on freenode.

Posted in announce | Comments Off

Announce: Windows MSI Installers for release 2015.03

MSI installers now come in two versions.

In the past we had to build Rakudo on a x86 (32bit) platform to create an MSI installer package that is most portable. As of now we will also provide an x86_64 (64bit) installer package that additionally comes with JIT support.
If you have a 64bit system, probably Windows 7 or newer, the x86_64 version should give an extra performance boost compared to the 32bit version.
The two MSIs are available from http://rakudo.org/downloads/star/.

Posted in announce | Comments Off

Announce: Rakudo Star Release 2015.03

A useful, usable, “early adopter” distribution of Perl 6

On behalf of the Rakudo and Perl 6 development teams, I’m happy to
announce the March 2015 release of “Rakudo Star”, a useful and usable
distribution of Perl 6. The tarball for the March 2015 release is
available from http://rakudo.org/downloads/star/.

This Rakudo Star release comes with support for the MoarVM
backend (all module tests pass on supported platforms) along with
experimental support for the JVM backend (the modules Bailador,
Digest::MD5 and Grammar::Profiler::Simple are known to fail tests).

In the Perl 6 world, we make a distinction between the language
(“Perl 6″) and specific implementations of the language such as
“Rakudo Perl”. This Star release includes release 2015.03 of the
Rakudo Perl 6 compiler, version 2015.03 of MoarVM, plus various
modules, documentation, and other resources collected from the
Perl 6 community.

Some of the new compiler features added to this release include:

  • several renames of semi-internal methods. Please refer to the Rakudo
    2015.03 release notes
    for the full list
  • Allow Buf.AT-POS to return an l-value.
  • Implement method ^foo($) { ... } syntax.
  • Implemented PairMap (the simple case only, for now).
  • Implemented .antipairs (pairs with value => key).
  • Implemented pairup for creating pairs from lists.
  • Implemented LEXICAL, OUTERS and CALLERS pseudo-packages
  • Add array[T], usable for native int/num (MoarVM only for now)
  • Other native improvements, e.g. my int $a; $a++
  • Implement IO::Path.resolve on r-m/POSIX

In future, the nqp:: namespace willl only be available after a declaration
like use nqp;.

Changes to modules included in Rakudo Star:

  • DBIish supports local Sockets on mysql,
    and now correctly handles returned NULL values in the Pg backend
  • doc ships with much more documentation

There are some key features of Perl 6 that Rakudo Star does not yet
handle appropriately, although they will appear in upcoming releases.
Some of the not-quite-there features include:

  • advanced macros
  • threads and concurrency (in progress)
  • Unicode strings at levels other than codepoints
  • interactive readline that understands Unicode
  • non-blocking I/O (in progress)
  • much of Synopsis 9 and 11

There is an online resource at http://perl6.org/compilers/features
that lists the known implemented and missing features of Rakudo’s
backends and other Perl 6 implementations.

In many places we’ve tried to make Rakudo smart enough to inform the
programmer that a given feature isn’t implemented, but there are many
that we’ve missed. Bug reports about missing and broken features are
welcomed at rakudobug@perl.org.

See http://perl6.org/ for links to much more information about
Perl 6, including documentation, example code, tutorials, reference
materials, specification documents, and other supporting resources. A
draft of a Perl 6 book is available as docs/UsingPerl6-draft.pdf in
the release tarball.

The development team thanks all of the contributors and sponsors for
making Rakudo Star possible. If you would like to contribute, see
http://rakudo.org/how-to-help, ask on the perl6-compiler@perl.org
mailing list, or join us on IRC #perl6 on freenode.

Posted in announce | Comments Off