Size: a a a

2020 July 03

ЕХ

Евгений Холкин... in fprog_spb
Jerzy Syrowiecki
не только сложность. некоторые языки просто не хотят TCO, потому что хотят разматывать стэк для отладки. например, такое было официальное объяснение Гвидо, почему TCO не будет в Питоне
А обратно нельзя деоптимизировать хвостовые вызовы?
источник

YS

Yan Shkurinskiy in fprog_spb
деоптимизировать?
источник

ЕХ

Евгений Холкин... in fprog_spb
Да.
источник

YS

Yan Shkurinskiy in fprog_spb
из итераций в рекурсию с накоплением стека?
источник

ЕХ

Евгений Холкин... in fprog_spb
В обратку.
источник

ЕХ

Евгений Холкин... in fprog_spb
Да.
источник

AI

Andrey Ivanov in fprog_spb
напрограммировали? теперь распрограммируйте! (С)
источник

JS

Jerzy Syrowiecki in fprog_spb
Евгений Холкин
А обратно нельзя деоптимизировать хвостовые вызовы?
наверно, в некоторых случаях можно. но зачем? чтобы стэк вызовов получить?
источник

ЕХ

Евгений Холкин... in fprog_spb
Точно!
источник

ЕХ

Евгений Холкин... in fprog_spb
Да.
источник

JS

Jerzy Syrowiecki in fprog_spb
нет, это противоречит идее оптимизации
источник

ЕХ

Евгений Холкин... in fprog_spb
Программа же в рантайме, а не в дебаге, работает.
источник

YS

Yan Shkurinskiy in fprog_spb
зато не противоречит идее деоптимизации)
источник

JS

Jerzy Syrowiecki in fprog_spb
суть TCO в том, чтобы не оставлять следов, чтобы тратить O(1) памяти
источник

ЕХ

Евгений Холкин... in fprog_spb
Jerzy Syrowiecki
суть TCO в том, чтобы не оставлять следов, чтобы тратить O(1) памяти
Во-о-от.
источник

JS

Jerzy Syrowiecki in fprog_spb
если оставлять следы для стэка, потребуется O(n) памяти, алгоритмы, основанные на TCO, работать не будут
источник

ЕХ

Евгений Холкин... in fprog_spb
А в TRO в чем суть?
источник

ЕХ

Евгений Холкин... in fprog_spb
Jerzy Syrowiecki
если оставлять следы для стэка, потребуется O(n) памяти, алгоритмы, основанные на TCO, работать не будут
Для дебага самое то, а для рантайма нет. Не?
источник

ЕХ

Евгений Холкин... in fprog_spb
А как у них в Пайтоне, стек на куче, как у Андрея?
источник

JS

Jerzy Syrowiecki in fprog_spb
Евгений Холкин
Для дебага самое то, а для рантайма нет. Не?
в некоторых случаях, может быть. для таких случаев, например, в Хаскеле есть трассировка и явный CasllStack. можно собрать стэк, отказавшить от TCO
источник