This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Cleanup utf8_heavy; allow dropping the In prefix from
[perl5.git] / lib / Memoize / README
1
2 Name:           Memoize
3 What:           Transparently speed up functions by caching return values.
4 Version:        0.66
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.65:
29
30 Test changes only.  
31
32         0.62 was the fist version that would be distributed with Perl.
33         I got so absorbed in integrating it that I wrote some tests
34         that used Time::HiRes.  I knew this was safe because
35         Time::HiRes is also distributed with the same versions of
36         Perl.  I totally forgot that some people will get the module
37         off of CPAN without Perl and they may not have TIme::HiRes.
38         Sorry!
39
40 ################################################################
41 What's new since 0.62:
42
43
44                             N O T I C E !
45
46     ****************************************************************
47     **                                                            **
48     **   The TIE option is now strongly deprecated.  It will be   **
49     **   permanently removed in the NEXT release of Memoize.      **
50     **   Please convert all extant software to use HASH instead.  **
51     **                                                            **
52     **   See the manual for details.                              **
53     **                                                            **
54     ****************************************************************
55
56 I'm sorry about this.  I hate making incompatible changes.  But as of
57 v0.65, Memoize is included in the Perl core.  It is about to become
58 much more difficult to make incompatible interface changes; if I don't
59 get rid of TIE now, I may not get another chance.
60
61 TIE presented serious problems.  First, it had a bizarre syntax.  But
62 the big problem was that it was difficult and complicated for
63 expiration manager authors to support; evern expiration manager had to
64 duplicate the logic for handling TIE.  HASH is much simpler to use,
65 more powerful, and is trivial for expiration managers to support.
66
67 Many long-awaited cleanups and bug fixes. 
68
69 Memoize now works under threaded perl
70
71 Slow tests speeded up.  More test file improvements.
72
73 Long-standing LIST_CACHE bug cleared up---it turns out that there
74 never was a bug.  I put in tests for it anyway.
75
76 Manual increased.
77