Perl::Critic::Policy::BuiltinFunctions::RequireSimpleSortBlock - Sort blocks should have a single statement.


This Policy is part of the core Perl::Critic distribution.


Conway advises that sort functions should be simple. Any complicated operations on list elements should be computed and cached (perhaps via a Schwartzian Transform) before the sort, rather than computed inside the sort block, because the sort block is called N log N times instead of just N times.

This policy prohibits the most blatant case of complicated sort blocks: multiple statements. Future policies may wish to examine the sort block in more detail -- looking for subroutine calls or large numbers of operations.


This Policy is not configurable except for the standard options.


Chris Dolan <>


Copyright (c) 2006-2011 Chris Dolan.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.