| 1 |
root |
1.1 |
|
| 2 |
|
|
Name: Memoize |
| 3 |
|
|
What: Transparently speed up functions by caching return values. |
| 4 |
|
|
Version: 1.00 |
| 5 |
|
|
Author: Mark-Jason Dominus (mjd-perl-memoize+@plover.com) |
| 6 |
|
|
|
| 7 |
|
|
################################################################ |
| 8 |
|
|
|
| 9 |
|
|
How to build me: |
| 10 |
|
|
|
| 11 |
|
|
perl Makefile.PL |
| 12 |
|
|
make |
| 13 |
|
|
make test |
| 14 |
|
|
|
| 15 |
|
|
There's a very small chance that the tests in speed.t and |
| 16 |
|
|
expire_module_t.t might fail because of clock skew or bizarre system |
| 17 |
|
|
load conditions. If the tests there fail, rerun them and see if the |
| 18 |
|
|
problem persists. |
| 19 |
|
|
|
| 20 |
|
|
If the tests work, |
| 21 |
|
|
|
| 22 |
|
|
make install |
| 23 |
|
|
|
| 24 |
|
|
If not, please send me a report that mentions which tests failed. |
| 25 |
|
|
The address is: mjd-perl-memoize+@plover.com. |
| 26 |
|
|
|
| 27 |
|
|
################################################################ |
| 28 |
|
|
What's new since 0.66: |
| 29 |
|
|
|
| 30 |
|
|
Minor documentation and test changes only. |
| 31 |
|
|
|
| 32 |
|
|
################################################################ |
| 33 |
|
|
What's new since 0.65: |
| 34 |
|
|
|
| 35 |
|
|
Test changes only. |
| 36 |
|
|
|
| 37 |
|
|
0.62 was the fist version that would be distributed with Perl. |
| 38 |
|
|
I got so absorbed in integrating it that I wrote some tests |
| 39 |
|
|
that used Time::HiRes. I knew this was safe because |
| 40 |
|
|
Time::HiRes is also distributed with the same versions of |
| 41 |
|
|
Perl. I totally forgot that some people will get the module |
| 42 |
|
|
off of CPAN without Perl and they may not have TIme::HiRes. |
| 43 |
|
|
Sorry! |
| 44 |
|
|
|
| 45 |
|
|
################################################################ |
| 46 |
|
|
What's new since 0.62: |
| 47 |
|
|
|
| 48 |
|
|
|
| 49 |
|
|
N O T I C E ! |
| 50 |
|
|
|
| 51 |
|
|
**************************************************************** |
| 52 |
|
|
** ** |
| 53 |
|
|
** The TIE option is now strongly deprecated. It will be ** |
| 54 |
|
|
** permanently removed in the NEXT release of Memoize. ** |
| 55 |
|
|
** Please convert all extant software to use HASH instead. ** |
| 56 |
|
|
** ** |
| 57 |
|
|
** See the manual for details. ** |
| 58 |
|
|
** ** |
| 59 |
|
|
**************************************************************** |
| 60 |
|
|
|
| 61 |
|
|
I'm sorry about this. I hate making incompatible changes. But as of |
| 62 |
|
|
v0.65, Memoize is included in the Perl core. It is about to become |
| 63 |
|
|
much more difficult to make incompatible interface changes; if I don't |
| 64 |
|
|
get rid of TIE now, I may not get another chance. |
| 65 |
|
|
|
| 66 |
|
|
TIE presented serious problems. First, it had a bizarre syntax. But |
| 67 |
|
|
the big problem was that it was difficult and complicated for |
| 68 |
|
|
expiration manager authors to support; evern expiration manager had to |
| 69 |
|
|
duplicate the logic for handling TIE. HASH is much simpler to use, |
| 70 |
|
|
more powerful, and is trivial for expiration managers to support. |
| 71 |
|
|
|
| 72 |
|
|
Many long-awaited cleanups and bug fixes. |
| 73 |
|
|
|
| 74 |
|
|
Memoize now works under threaded perl |
| 75 |
|
|
|
| 76 |
|
|
Slow tests speeded up. More test file improvements. |
| 77 |
|
|
|
| 78 |
|
|
Long-standing LIST_CACHE bug cleared up---it turns out that there |
| 79 |
|
|
never was a bug. I put in tests for it anyway. |
| 80 |
|
|
|
| 81 |
|
|
Manual increased. |
| 82 |
|
|
|