Revision history for Algorithm-Combinatorics
0.11 November 8 2005
* CPAN.pm does not resolve the dependency with Inline before
Makefile.PL is executed, and it fails to generate the Makefile
because the module Inline::MakeMaker is not found. Due to this
ExtUtils::MakeMaker is back.
0.10 November 6 2005
* permutations() has been edited to match Algorithm L from [1]
* Added REFERENCES to POD
* Added a workaround to Makefile.PL for "No rule to make target
... needed by `pure_all'" so that the Makefile generated by
Inline::MakeMaker's WriteInlineMakefile() works, and thus the
C part behaves like a plain XS extension instead of generating
caches on the user machine
0.08 November 6 2005
* Changed hyphens in test filenames with underscores
* The module is known to run under 5.6.2, so the corresponding
use VERSION has been added
* variations(\@data, $k) is delegated to permutations(\@data) for
@data == $k, since permutations() is more efficient
* Changed AV* in signatures to SV* plus a cast (SV*) SvRV(array) due
to problems reported regarding AVPtrs. I copied the trick from the
Changes of Digest::SHA. (Thanks to Aaron Dalton for reporting the
problem.)
* variations() is much better, almost twice as fast and does not
create SVs
0.07 November 5 2005
* Documented the corresponding formulas
* Slicing is done now in Perl. The code is much more clear and in my
benchmarks no significant difference is measured
* The iterator now may receive an initial arrayref (this is private
implementation), which simplifies the set up of the iterator when
the first tuple is known
0.06 November 5 2005
* permutations() is about 3-4 times faster
0.05 November 4 2005
* Rewrote the test suite, and relevant documentation
* Added the helper module t/Tester.pm to factor out a common test
code pattern
* If k is "out of natural range"" the empty set is returned and a
warning is issued
* The iterators return an arrayref, and the implementation was
revised accordingly to be mathematically correct in edge-cases and
more forgiving
* I can't stand that DIAGNOSTICS::Errors section, so many croaks on
boundary conditions are so unperlish! The module has just a couple
of days so I am on time to fix this
0.02 November 3 2005
* README revised
* DEPENDENCIES added to POD
* DIAGNOSTICS added to POD
* VERSION added to POD
* Added some code documentation
* Minor tweaks on the XS code
0.01 November 2 2005
* First version, released on an unsuspecting world.