aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMoritz Lenz <moritz@faui2k3.org>2015-02-20 09:01:52 +0100
committerMoritz Lenz <moritz@faui2k3.org>2015-02-20 09:01:52 +0100
commitad603195cc64986f6b3bb462e40374a4becfdcc4 (patch)
tree917582ef6338650cb0e241d344e12174479e75c2
parentea65dfa9cf9d05c0ba69c64827cd9b166444cf87 (diff)
Draft release announcement for 2015.02
-rw-r--r--docs/announce/2015.02.md102
1 files changed, 102 insertions, 0 deletions
diff --git a/docs/announce/2015.02.md b/docs/announce/2015.02.md
new file mode 100644
index 0000000..7cdb902
--- /dev/null
+++ b/docs/announce/2015.02.md
@@ -0,0 +1,102 @@
+# Announce: Rakudo Star Release 2015.02
+
+## 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 2015 release of "Rakudo Star", a useful and usable
+distribution of Perl 6. The tarball for the January 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 (some module tests fail).
+Three shipped modules are known to fail on Parrot (zavolaj (NativeCall),
+jsonrpc and doc)
+
+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.02] of the
+[Rakudo Perl 6 compiler], version 6.10.0 of the [Parrot Virtual
+Machine], version 2015.02 of [MoarVM], plus various modules,
+documentation, and other resources collected from the Perl 6
+community.
+
+[release 2015.02]:
+ https://github.com/rakudo/rakudo/blob/nom/docs/announce/2015.02.md
+[Rakudo Perl 6 compiler]: http://github.com/rakudo/rakudo
+[Parrot Virtual Machine]: http://parrot.org
+[MoarVM]: http://moarvm.org/
+
+Some of the new compiler features added to this release include:
+
++ On MoarVM, symlinks are now followed. This means that e.g. a given path
+ can have both .l and .d be true, if the symlink points to a directory.
+ This behaviour now matches the behaviour on the Parrot and JVM backend,
+ therefore one could consider this a bug fix, rather than an incompatible
+ change.
++ Overriding invoke/postcircumfix:<( )> for type coercions (ex. MyType(...))
+ now passes the function arguments as-is, rather than just passing a Capture
+ containing them. To get the old behavior, simply declare a Capture
+ parameter (|c).
++ "6;" at unit start is no longer a way to say "no strict;". It was deemed
+ to be a bad meme and huffmannized inappropriately.
++ Coercion syntax now works in signatures: sub foo(Str(Any) $a) { ... }
+ will take Any value as its first positional parameter, and coerce it to
+ Str before making it available in $a. Note that Str(Any) can be shortened
+ to Str().
++ "sub MAIN;" (as in, rest of file is the MAIN unit) has been implemented.
++ Metaop "=" now respects the precedence of the op it is meta-ing.
++ Many optimizations, improved error messages and bugs fixed (over
+ 200 commits to Rakudo since the 2015.01 release).
+
+In future, the `nqp::` namespace willl only be available after a declaration
+like `use nqp;`.
+
+Changes to modules included in Rakudo Star:
+
+- [JSON::Tiny](https://github.com/moritz/json) gives better error messages on invalid input
+- [panda](https://github.com/tadzik/panda) givees better error messages when
+ projects.json is not a valid JSON file (for example due to ISP-level HTTP filtering)
+- [doc](https://github.com/perl6/doc) ships with much more documentation
+- [LWP::Simple](https://github.com/cosimo/perl6-lwp-simple) supports PUT and HEAD requests,
+ as well as TLS if [IO::Socket::SSL](https://github.com/sergot/io-socket-ssl/) is installed.
+
+The `Math::Model` and `Math::RungeKutta` modules no longer ship with Rakudo
+Star. They can still be installed with `panda`.
+
+This is the last Rakudo Star release with support for the Parrot backend,
+until volunteers are found that bring the Parrot backend in shape en par with
+the other backends, and implement necessary features for upcoming changes. See
+[this blog post](http://pmthium.com/2015/02/suspending-rakudo-parrot/) for
+more information.
+
+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 for the JVM and MoarVM backend)
+ * Unicode strings at levels other than codepoints
+ * interactive readline that understands Unicode
+ * non-blocking I/O (in progress for the JVM and MoarVM backend)
+ * 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.