Re: Every.pm on CPAN
by Gisle Aas other posts by this author
Jul 18 2008 11:19AM messages near this date
Re: Every.pm on CPAN
|
Re: Every.pm on CPAN
On Jul 18, 2008, at 15:26, Ted Zlatanov wrote:
> I put a module Every.pm on CPAN, which lets you do
>
> print "hi" if every(5);
>
> which will print "hi" once every 5 times it's called. There's a form
> for seconds elapsed as well, which will run if N seconds have elapsed.
>
> (it came to be with help from c.l.p.misc regulars, it's not just mine)
>
> I wonder if:
>
> 1) there's any chance of including it in the core in some form; I
> think
> it's really useful and the common (if $i % 5 == 0) format has lots of
> shortcomings;
What would those shortcoming be? I've never been bothered by that
idiom. Anyways, I think there need to be a lot better reasons than
that a single user finds a utility function useful for adding a
module providing it to the core...
>
> 2) there's a way to know not just the line, but also the character
> position of a function call, so we can do
>
> if (every(5) || every(6)) {}
>
> without resorting to shenanigans like using \5 and \6 or passing a
> special identifier in addition to the number.
...especially if the function does not even work reliably :(
On the more helpful side; you can get a reference to the number
passed in by using \$_[0] inside the function. I still don't think
you should rely on perl not reusing integer literals passed to
functions.
--Gisle
Thread:
Ted Zlatanov
Abigail
Ted Zlatanov
Ben Morrow
Roland Giersig
David Nicol
Ted Zlatanov
Ted Zlatanov
David Nicol
Ben Morrow
Ted Zlatanov
Chromatic
Aristotle Pagaltzis
Nicholas Clark
Yitzchak Scott-Thoennes
David Nicol
Ted Zlatanov
Abigail
Ted Zlatanov
Abigail
David Nicol
Ted Zlatanov
Aristotle Pagaltzis
Ted Zlatanov
David Cantrell
David Nicol
Eric Wilhelm
David Nicol
Ben Morrow
Aristotle Pagaltzis
Paul Johnson
David Nicol
Eric Brine
Gisle Aas
David Nicol
Nicholas Clark
|