aboutsummaryrefslogtreecommitdiff
path: root/docs/announce/2011.07
blob: b51858be2839c3d8d5c78d037cd187f3b7ddb2b4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
Announce: Rakudo Star - 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 2011 release of "Rakudo Star", a useful and usable
distribution of Perl 6.  The tarball for the July 2011 release is
available from <http://github.com/rakudo/star/downloads>.

IMPORTANT NOTE ABOUT UPCOMING RELEASES: This is the last Rakudo Star 
release to use a compiler from the current "master" branch of Rakudo.
For the past several months, Rakudo compiler development has
primarily occurred in a separate "nom" ("New Object Model") branch of 
its repository.  Shortly after this release, the "nom" branch will 
become the new "master" branch and will be the source for future 
compiler and Star releases.

In the Perl 6 world, we make a distinction between the language 
("Perl 6") and specific implementations of the language such as
"Rakudo Perl".  The July 2011 Star release includes release #43
of the Rakudo Perl 6 compiler [1], version 3.6.0 of the Parrot 
Virtual Machine [2], and various modules, documentation,
and other resources collected from the Perl 6 community.

The Rakudo team plans to issue another distribution release
in August 2011 based on the new "nom" compiler.  The new
compiler contains many improvements over the current line
of development (including vastly improved performance), but also 
will not be 100% backwards-compatible due to changes in the 
Perl 6 language specification and elimination of some workarounds.  
Existing Rakudo Star users looking for stability should continue 
to use the July 2011 release as the new distribution releases 
stabilize over the next several months.

Details about deprecations and migration guidelines will be
provided in future releases and on rakudo.org .

This release of Rakudo Star adds the following features over the
previous Star release:
  * 10%-30% improvement in compile and execution speed
  * New gcd (greatest common divisor) and lcm (largest common multiple) operators
  * Int.base
  * Call counter for Perl 6-level subroutines
  * Better handling of &infix:<=> right associativity
  * Fix bug in exponentiation of negative numbers
  * Fix building on systems with smaller RAM

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:
  * nested package definitions
  * binary objects, native types, pack and unpack
  * typed arrays
  * macros
  * state variables
  * threads and concurrency
  * Unicode strings at levels other than codepoints
  * pre and post constraints, and some other phasers
  * interactive readline that understands Unicode
  * backslash escapes in regex <[...]> character classes
  * non-blocking I/O
  * most of Synopsis 9
  * perl6doc or pod manipulation tools

There is a new online resource at http://perl6.org/compilers/features 
that lists the known implemented and missing features of Rakudo Star
2011.07 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.
An updated 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.

[1] http://github.com/rakudo/rakudo
[2] http://parrot.org/