diff options
authorjnthn <jnthn@jnthn.net>2012-01-22 21:53:42 +0100
committerjnthn <jnthn@jnthn.net>2012-01-22 21:53:42 +0100
commit68c7b810aac92c2e60290a608dac46a0e790dc6b (patch)
parent35626280f4972434866063b03e52b5365581ada6 (diff)
First draft of the 2012.01 release announcement for Star.
1 files changed, 122 insertions, 0 deletions
diff --git a/skel/docs/announce/2012.01 b/skel/docs/announce/2012.01
new file mode 100644
index 0000000..4b95b4d
--- /dev/null
+++ b/skel/docs/announce/2012.01
@@ -0,0 +1,122 @@
+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 January 2012 release of "Rakudo Star", a useful and
+usable distribution of Perl 6. The tarball for the January 2012
+release is available from <http://github.com/rakudo/star/downloads>.
+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 #48 of the
+Rakudo Perl 6 compiler [1], version 4.0.0 of the Parrot Virtual
+Machine [2], and various modules, documentation, and other
+resources collected from the Perl 6 community.
+Significantly, this is the first distribution release based on the
+"nom" (New Object Model) development branch of Rakudo. This work
+has been carried out with the aim of increasing performance and
+correctness, as well as providing a better base for taking on a
+range of missing features. Here are some of the major improvements
+in this release over the previous distribution release.
+* Greatly improved performance in many areas. For some scripts, this
+ release offers an order of magnitude performance improvement.
+* POD6 support, including the $=POD variable to make the POD available
+ at runtime and a --doc option to get at the POD
+* The Int type now has big integer semantics
+* Initial work on native types, which can be used to write much
+ more efficient code
+* LTM-driven protoregexes
+* Meta-programming support, including custom meta-classes, overriding
+ method dispatch and much more
+* Exception handling is much closer to the specification, and thus much
+ more useful
+* Better package handling, including true separate compilation, lexical
+ packages and better nested package handling
+* An optimizer, which improves generated code as well as catching
+ a range of issues at compile-time that previously made it to runtime
+* Backslash sequences in character classes
+* Stubbed methods from roles are now required, providing interface
+ style functionality
+* Typed arrays and hashes, as well as supporting for binding to
+ array and hash elements
+Due to improvements in the Perl 6 language specification, and
+changes to Rakudo to track them, some existing code will need
+changes. Here are some of the major differences to be aware of.
+* Attributes can no longer be initialized using "new" unless they
+ are declared as having an accessor; either give them one or write
+ a BUILD submethod
+* The proto keyword is no longer used to declare a multi-dispatch
+ fallback
+* You may no longer do 'filename'.lines; use 'filename'.IO.lines
+We have maintained backwards compatibility with some changed pieces
+of syntax, but will drop them in an upcoming release:
+* "<...>" in proto regex bodies; now this should be written "*"
+* The use of "**" with a separator in regexes; this is now done by
+ using "%" or "%%" on another quantifier
+While this release does contain a great number of improvements,
+unfortunately we have regressed in a few places. Of note:
+* Some cases of auto-vivification do not work
+* The binding of a capture against a signature literal is
+ broken
+We will be working to restore this functionality for future
+Rakudo Star releases; if you depend heavily on it, you may
+wish to stick with the previous Rakudo Star release for
+another month.
+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:
+ * binary objects, pack and unpack
+ * macros
+ * threads and concurrency
+ * Unicode strings at levels other than codepoints
+ * pre and post constraints, and some other phasers
+ * interactive readline that understands Unicode
+ * non-blocking I/O
+ * much of Synopsis 9
+There is a new online resource at http://perl6.org/compilers/features
+that lists the known implemented and missing features of Rakudo Star
+2012.01 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/