| 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 |
|
|---|