On Tue, Mar 27, 2018 at 12:05 AM, Linker Lin <linker.m....@gmail.com> wrote:
> become +1
> TCO is very important for porting other FP lang to Go.

This is https://golang.org/issue/22624.

Ian


> On Monday, February 14, 2011 at 4:25:24 AM UTC+8, Eoghan Sherry wrote:
>>
>> On 13 February 2011 08:51, chris dollin <ehog....@googlemail.com> wrote:
>> > On 13 February 2011 10:34, Erwin <snes...@gmail.com> wrote:
>> >>>
>> >>> There are no such plans for gc (6g, 5g, 8g).
>> >>> Personally, I find meaningful stack traces helpful more
>> >>> often than I find myself using unbounded tail recursions.
>> >>> I have on other projects used gcc -fno-optimize-sibling-calls
>> >>> precisely to make stack traces more useful.
>> >>>
>> >> Wouldn't a gc -no-optimize mode be a good thing to have once
>> >> optimizations
>> >> get in the way of debugging?
>> >
>> > If I'm assuming/relying on tail-call optimisation in my coding, then
>> > turning it off "for debugging" will likely make my program crash
>> > demanding more stack frames.
>> >
>> > We all have our choices: I'd rather have guaranteed TCO than full
>> > stack-frames for debugging, but I don't think it's unreasonable for
>> > someone else to have the opposite preference.
>>
>> I found Newsqueak's become statement a nice fit for TCO in an
>> imperative setting.
>>
>> func sum(a, b uint) uint {
>>     if a == 0 {
>>         return b
>>     }
>>     become sum(a-1, b+1)
>> }
>>
>> Eoghan
>
> --
> 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.

-- 
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