From 69c56ad3b03041840295e9ad9a54d022b16e4252 Mon Sep 17 00:00:00 2001 From: Steve Mynott Date: Sun, 17 Jul 2016 15:23:49 +0100 Subject: roll in some of the rakudo changelog from 2016.07 --- docs/announce/2016.07.md | 34 +++++++++++++++++++++++++++++++--- 1 file changed, 31 insertions(+), 3 deletions(-) (limited to 'docs') diff --git a/docs/announce/2016.07.md b/docs/announce/2016.07.md index b8b2bd0..e5eae4c 100644 --- a/docs/announce/2016.07.md +++ b/docs/announce/2016.07.md @@ -28,22 +28,50 @@ collected from the Perl 6 community. Some of the new compiler features since the last Rakudo Star release include: * Ability to use a customer debugger module - * The "is-approx" sub from Test.pm6 now allows for relative/absolute tolerance + * The "is-approx" sub from Test.pm6 now allows for relative/absolute + tolerance * A fail in a custom BUILD will now be returned, rather than thrown * Introduce .Map coercer * Implement alternate ways to call subtest + * Support for new leap-second at the end of 2016 + * The "is required" trait on Attributes can now take a Bool or a Str + * IO::[Path,Handle] gained a .mode method which returns the POSIX file + permissions + * Distribution is now a role interface that enables encapsulating IO + used for distribution installation + * CompUnit::Repository::Installation now uses the new Distribution + interface + * Custom repository implementations now supported, including + precompilation Compiler maintenance since the last Rakudo Star release includes: * Basic object creation (using either .new or .bless) now up to 3x faster * All routines now have less overhead - * Sigificant optimizations for speed in many parts of the system (.map, gather/take etc.) - * Many precompilation fixes (including EVAL and improved support of OS packaging) + * The MMD cache accepts candidates with named parameters if it can. + (This made adverbed slices about 18x as fast) + * Sigificant optimizations for speed in many parts of the system (.map, + gather/take etc.) + * Many precompilation fixes (including EVAL and improved support of OS + packaging) * Arrays with holes (e.g. from :delete) now correctly iterate/auto-vivify * An issue with reverse dependencies of installed modules was fixed * "is_approx" sub (note underscore) from Test.pm6 deprecated * Harden Mu.Str against moving GC * Simplify $*USER/$*GROUP initialization + * Mu can now be the result of a Promise + * samewith() now also works on none-multi's + * Many fixes in the area of pre-compilation and installing modules + * count-only and bool-only now are optional methods in Iterators + (only to be implemented if they can work without generating anything) + * IO::ArgFiles.slurp / IO::ArgFiles.eof are fixed + * REPL whitespace and error handling + * CompUnit::Repository::Installation no longer considers `bin/xxx` and + `resources/bin/xxx` the same content address + * min/max on Failures throw instead of returning ±Inf + * NativeCall's is mangled trait no longer ignored for CPPStruct + * Many Str, List and Array methods much faster + * Map/Hash initializations are now 30% faster Notable changes in modules shipped with Rakudo Star: -- cgit v1.1