On Thu, Sep 20, 2012 at 07:25:42PM -0700, Andrew Mathas wrote:
>    Please let me know which of the following options you prefer:
>     1. deprecate the options to number_of_partitions and have the function in
>        the global namespace point directly to
>        sage.combinat.partitions.number_of_partitions so as to create a
>        genuinely fast function.
>        (This is what is currently done in #13072)
>     2. deprecate the options from number_of_partitions but still have the
>        number_of_partitions function in the global namespace point to
>        sage.combinat.partition.number_of_partitions which then calls whatever
>        the current fastest implementation is.
>
> ...
>
>    My preference is option #1. Note that all of the current options to
>    number_of_partitions are still available through
>    Partitions(*).cardinality() so no functionality is being lost
> 
>    One issue in favour of option #2 is that the fastest algorithm available
>    changes frequently (hence the choice of algorithm in the
>    number_of_partitions function). Currently it is Bober's algorithm but trac
>    #13199 implements a significantly faster algorithm which lives natively in
>    FLINT. This patch depends on #12173 which updates FLINT to version 2.3.
>    There seem to be some issues with the upgrade to FLINT 2.3 but as soon as
>    they are resolved it should be possible to merge #13199 quickly into sage
>    (I'm happy to review it).

In the long run I definitely vote for option 1, with
sage.combinat.partitions.number_of_partitions pointing at any time to
whatever implementation is fastest. I am also all fine with option 1
in the short run if the user gets a useful error message when passing
extra options; something like:

        sage: number_of_partitions(4, <some options>)
        Error ... options ... not supported anymore ...
        Please use Partitions(n, <options>)

Otherwise I vote for option 2 as a first round, and option 1 later.

But that's just my 2 cents!

Cheers,
                                Nicolas
--
Nicolas M. ThiƩry "Isil" <nthi...@users.sf.net>
http://Nicolas.Thiery.name/

-- 
You received this message because you are subscribed to the Google Groups 
"sage-devel" group.
To post to this group, send email to sage-devel@googlegroups.com.
To unsubscribe from this group, send email to 
sage-devel+unsubscr...@googlegroups.com.
Visit this group at http://groups.google.com/group/sage-devel?hl=en.


Reply via email to