Sounds good. CL up for review at
https://go-review.googlesource.com/c/go/+/347917

On Mon, Sep 6, 2021 at 7:30 PM Arnaud Delobelle <arno...@gmail.com> wrote:

> If the growing function is currently
>
> f(x) = 2x         for x < 1024
> f(x) = x + x/4 otherwise
>
> (Which I haven't checked), couldn't a simple way be to use e.g.
>
> f(x) = 2x                    for x < 1024
> f(x) = x + x/4 + 768 otherwise
>
> Then
>
> f(1023) = 2046
> f(1024) = 2048
>
> So the function is monotonic (and kind of "smooth")
>
> On Tue, 7 Sep 2021, 02:17 'Keith Randall' via golang-nuts, <
> golang-nuts@googlegroups.com> wrote:
>
>> I don't think this is an important thing to fix, but I agree it is a bit
>> odd. If there's a simple way to restore monotonicity we'll consider it.
>> A similar issue: https://github.com/golang/go/issues/41239
>>
>> On Sunday, September 5, 2021 at 8:59:01 AM UTC-7 jake...@gmail.com wrote:
>>
>>> You are 100% correct. I missed that value. oops
>>>
>>> On Sunday, September 5, 2021 at 10:16:08 AM UTC-4 arn...@gmail.com
>>> wrote:
>>>
>>>>
>>>>
>>>> On Sun, 5 Sep 2021, 14:59 jake...@gmail.com, <jake...@gmail.com> wrote:
>>>> [...]
>>>>
>>>>> In the example given  (https://play.golang.org/p/RJbEkmFsPKM
>>>>> <https://play.golang.org/p/RJbEkmFsPKM>), the capacities *are 
>>>>> *"monotonically
>>>>> increasing", as no number in the second column is smaller than the one
>>>>> before it.
>>>>>
>>>>
>>>> Nitpick: that is not true.  I copy-pasted the output of the playground
>>>> below.
>>>>
>>>> 0 8
>>>> 100 208
>>>> 200 416
>>>> 300 640
>>>> 400 896
>>>> 500 1024
>>>> 600 1280
>>>> 700 1408
>>>> 800 1792
>>>> 900 2048
>>>> 1000 2048
>>>> 1100 1408 <-- at this point the new cap is less than for the previous
>>>> row
>>>> 1200 1536
>>>> 1300 1792
>>>> 1400 1792
>>>> 1500 2048
>>>> 1600 2048
>>>> 1700 2304
>>>> 1800 2304
>>>> 1900 2688
>>>>
>>>> Regards,
>>>>
>>>> Arnaud
>>>>
>>>> On Sunday, September 5, 2021 at 7:02:43 AM UTC-4 kortschak wrote:
>>>>>
>>>>>> On Sun, 2021-09-05 at 03:51 -0700, Brian Candler wrote:
>>>>>> > I'm not sure you're clear about what "monotonically increasing"
>>>>>> > means.
>>>>>> >
>>>>>> > Are you saying that there are some cases where append() results in
>>>>>> > the allocated size of a slice *shrinking*? If so, please
>>>>>> > demonstrate.
>>>>>>
>>>>>> I think he means that the cap of the appended slice is not a
>>>>>> monotonically increasing function of the cap of the input slice.
>>>>>>
>>>>>> https://play.golang.org/p/RJbEkmFsPKM
>>>>>>
>>>>>>
>>>>>> --
>>>>> 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...@googlegroups.com.
>>>>>
>>>> To view this discussion on the web visit
>>>>> https://groups.google.com/d/msgid/golang-nuts/912453d5-2f2f-43b2-b65f-ce27e95752e9n%40googlegroups.com
>>>>> <https://groups.google.com/d/msgid/golang-nuts/912453d5-2f2f-43b2-b65f-ce27e95752e9n%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>> .
>>>>>
>>>> --
>> 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.
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/golang-nuts/fa360f3d-e23c-4c07-9505-9f89bd155bb8n%40googlegroups.com
>> <https://groups.google.com/d/msgid/golang-nuts/fa360f3d-e23c-4c07-9505-9f89bd155bb8n%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
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.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/golang-nuts/CAB%3Df9xRYVD5UW4kqoZQm34rd18BjfYnM0%2BZY9xUpdQeDWKWv7w%40mail.gmail.com.

Reply via email to