Re: [資訊] Guido 對 Tail Recursion Elimination …

看板Python作者 (生の直感、死の予感)時間15年前 (2009/04/30 05:01), 編輯推噓1(101)
留言2則, 1人參與, 最新討論串2/3 (看更多)
※ 引述《yjc1 (..........)》之銘言: : ※ 引述《yjc1 (..........)》之銘言: : : http://neopythonic.blogspot.com/2009/04/tail-recursion-elimination.html : : 解釋了這麼多年來一直沒把 TRE / TCO(Tail Call Opimization) 加到 python 的原因 : : 這些理由可以理解但不太能接受… 連 lua 都 support TCO 了… : http://neopythonic.blogspot.com/2009/04/final-words-on-tail-calls.html : 再次確認 TCO 無望,但後半段提到的 TCO 替代方案頗有趣 : 看起來還是可以硬幹,只是很醜…… : 這些理由中唯一可以說服我的只有 guido 對 stack frame 不能被破壞的堅持, : 但個人感覺 stack frame 也沒那麼神聖不可侵犯。 : 而且連放到 -O 才開的方式都冠以「破壞一致性」的大義…就死心了吧… 這個之前提到過以Decorator 來做的TCO實作我覺得還OK。 有需要就加進去code裡, 使用起來完全不影響原本遞迴本身的形式優美明白、 同時使用者也能夠清楚分辨這部份有做過最佳化, 並針對自己的需要來使用。 http://code.activestate.com/recipes/474088/ http://lambda-the-ultimate.org/node/1331#comment-15165 python 語言本身就能讓使用者簡單擴展, 做起來也不難,我覺得不需要像C,Java那樣對語法性質爭議那麼多。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 154.20.36.163 ※ 編輯: Lucemia 來自: 154.20.36.163 (04/30 05:05) ※ 編輯: Lucemia 來自: 154.20.36.163 (04/30 05:07)

04/30 10:12, , 1F
以 decorator 實做的話,我也贊成
04/30 10:12, 1F

04/30 10:13, , 2F
使用者也能夠清楚分辨這部份有做過最佳化
04/30 10:13, 2F
文章代碼(AID): #19-C0HMP (Python)
文章代碼(AID): #19-C0HMP (Python)