Yeah, sorry, was silly of me to compare to other stdlib additions without
knowing their context.

Something I wish I'd highlighted--there's a real win at 1K ints or strings,
not just for tons of elements:

benchmark                 old ns/op      new ns/op     delta
BenchmarkSortString1K     157053         140977        -10.24%
BenchmarkSortInt1K        74960          37132         -50.46%
BenchmarkSortInt64K       7172803        2442056       -65.95%
BenchmarkSort1e2          43965          43637         -0.75%
BenchmarkSort1e4          9257065        4647930       -49.79%
BenchmarkSort1e6          1451722040     538937237     -62.88%

That's serial, in-place sort using sort.Interface plus a Key method, i.e.,
just the effect of the algo change, not skipping interface overhead or
using temp slices or such.

Still, I see one "don't think so" and zero expressions of interest. :)
Calling this one dead for now but always up to answer questions or whatever.

Best,
Randall

2016-08-17 22:57 GMT-07:00 Nigel Tao <nigel...@golang.org>:

> On Tue, Aug 16, 2016 at 1:05 PM, Randall Farmer <rand...@wawd.com> wrote:
> > I think, in general, a great thing about Go is most stdlib packages scale
> > well--net/http's still a good pick when you get real traffic, say. Adding
> > stdlib sorts that are faster for large collections seems in that spirit.
> > They'd be no more niche than, say, index/suffixarray or big.Float. (I
> love
> > that Go has those, 'cause they're cool fundamental capabilities; I'm just
> > saying maybe faster sorts for larger datasets are, too.)
>
> FWIW, I don't think citing index/suffixarray is a compelling
> precedent. If I recall correctly, that package was added to the stdlib
> long before Go 1.0, because godoc needed it, and we didn't have
> anywhere else to put code at the time. Similarly, big.Float isn't
> widely used, but math/big is in the stdlib because big.Int is needed
> by some crypto, and again, this was all done before Go 1.0.
>
> Personally speaking, I don't think it'd meet the threshold, but I'm
> open to dissenting opinions.
>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to