#go the language doesn't require tail call optimization: "tail recursion is a compiler feature, not a language feature; 6g/8g support it in limited cases, gccgo supports it pretty generally <... > I think relying on tail recursion optimization would be a bad idea if the recursion gets deep; same guideline as in C, really"
Можно ссылку? По тексту не гуглится. Но если это авторы языка говорят, то это пц.
- Eugene Kirpichov
“I think relying on tail recursion optimization would be a bad idea if the recursion gets deep” — что-то эта фраза совсем смысла не имеет
- Ещё быстрей Гонсалес
это я спрашивал в #go-nuts, т. к. спеки вообще молчат про рекурсию, даже обычную
- Андрей Власовских
@ivant (не путать с iant :) это он к тому, что tco не является обязательной, поэтому надеяться на неё не стоит и глубокая хвостовая рекурсия нежелательна
- Андрей Власовских
Эх, как приятно видеть дискуссию, в которой всего один невежда. Жалко, правда, что именно он - разработчик языка :)
- Eugene Kirpichov
Можно спопугайничать как-нибудь так: "loops are an ok feature, but nobody should count on being able to loop more than 100 times" :-)
- Ещё быстрей Гонсалес