Re: LAST^2 CALL for SRFI 113, Sets and Bags
John Cowan 26 Aug 2014 14:42 UTC
Alex Shinn scripsit:
> Specifically I think because of the combinatorial explosion in memory
> needed, such operations are better served by a generating API than
> one which returns a complete data structure, either as an abstract
> generator or as a loop syntax extension.
I agree that such an API would be a Good Thing. However, I don't agree
that because something might run till the Big Rip (or Big Crunch)
if applied to sufficient data, that it should never be used at all.
When you need exponential algorithms, and your problem is small enough
to use them, you should have them.
(This is the same disagreement we had about back references in SRFI 115.)
> Such an API should also include combinations and permutations, as
> in Gauche's util.combinations[1] library. See TAoCP Vol. 4a 7.2.1
> for algorithms.
Agreed.
> [1] http://practical-scheme.net/gauche/man/gauche-refe_199.html
Thanks.
--
John Cowan http://www.ccil.org/~cowan xxxxxx@ccil.org
The Penguin shall hunt and devour all that is crufty, gnarly and
bogacious; all code which wriggles like spaghetti, or is infested with
blighting creatures, or is bound by grave and perilous Licences shall it
capture. And in capturing shall it replicate, and in replicating shall
it document, and in documentation shall it bring freedom, serenity and
most cool froodiness to the earth and all who code therein. --Gospel of Tux