Skip Menu |

This queue is for tickets about the Scalar-List-Utils CPAN distribution.

Report information
The Basics
Id: 105275
Status: resolved
Priority: 0/
Queue: Scalar-List-Utils

People
Owner: Nobody in particular
Requestors: blue [...] thisisnotmyrealemail.com
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: 1.54



Subject: new function suggestion - sample($k, @list)
Repeating a github issue because it looks like nobody is a member of the github group Scalar-List-Utils, so not sure if anybody gets notified of new issues. From https://github.com/Scalar-List-Utils/Scalar-List-Utils/issues/25 I frequently find myself in need of getting k random elements from a list of size n. To do this, I shuffle the list and take a slice of size k. But it would be more efficient when n is large to implement this as a truncated shuffle, so you can stop the shuffle algorithm after k steps. I would have proposed this for List::MoreUtils, but it might be better off in the same module as shuffle, especially if they can share the same XS implementation
There're members, but Ticket's shall be sent to https://rt.cpan.org/Dist/Display.html?Name=Scalar-List-Utils - please respect the choosen ticket URL, if you want to be heared. Maybe a working e-Mail address is an option, either. However - provide a nice Perl and XS implementation, suitable tests and I merge it.
A function exactly like this was added in 1.54 -- Paul Evans