| Module Info
| Add a review of Array-PAT
In addition to the functions which only work by accident, some of the functions don't work at all, or don't work in the way that is described in the documentation.
This is a horrible module. Some of the functions only work by coincidence - for instance array_merge() starts with my( @arr1, @arr2 ) = @_; and then attempts to iterate over @arr2. Guess what, there's nothing in @arr2 - because the arrays already got merged in the first line! The rest of the function is a no-op. The fact that the function exists at all demonstrates a severe lack of understanding of very basic concepts in Perl.
This module should be removed from CPAN.
This is an outrageously bad module and I implore everyone to have a look at its source code. The shuffle() function takes over half a minute to shuffle a list of 1000 elements. I did some metrics: In order to do the shuffling, it did no less than 8500 full iterations over the input list! in_array() is just plain broken and only works by accident. Again, I recommend a look at the source code for the sake of amusement. Almost all other functions are implemented in an extremely awkward manner at best, suggesting that its author is not familiar with Perl.
This useless code should be removed from CPAN. Please. One read will show you that this class can be simply replaced with... well... perl. CORE+List::Utils does everything from this module.