LINUX.ORG.RU

История изменений

Исправление dsxl, (текущая версия) :

не сложнее чем увидеть хвостовой вызов

сложность примерно одинаковая, но оптимизации гарантируются не специфической формой записи, которую компилятор превратит в цикл (если автор не напутал чего, или как в случае с плюсами, например, не появится где-нибудь деструктор и т.п. веселье), а просто наличием самого цикла в коде (и отсутствием рекурсии).

мистический декоратор

для мемоизации

ну видишь, сам же прекрасно знаешь, что никакой он не мистический. Ну, называется он по-дибильному - так это Гвидо виноват. В другом языке будет называться memoize и вызываться как функция высшего порядка. Сути-то это не меняет.

свопы

Уж точно понятнее, чем fibr с тремя агрументами. Ну, а вобще это специфика числовых рядов.

от себя добавлю нередкую необходимость явного копирования

Весь мой поинт в том, что оптимизация и должна быть явной.

В нормальном фп интерпретаторе/компиляторе ничего сломать нельзя нормальный, не писаный за два дня на коленке рантайм оптимизирует

Ну конечно, и проблему остановки он тоже умеет решать. Он же не на коленке писан. Он нормальный. Ну, а если не умеет, то значит не нормальный, ты не про этот говорил.

Исходная версия dsxl, :

не сложнее чем увидеть хвостовой вызов

сложность примерно одинаковая, но оптимизации гарантируются не специфической формой записи, которую компилятор превратит в цикл (если автор не напутал чего, или как в случае с плюсами, например, не появится где-нибудь деструктор и т.п. веселье), а просто наличием самого цикла в коде (и отсутствием рекурсии).

мистический декоратор для мемоизации

ну видишь, сам же прекрасно знаешь, что никакой он не мистический. Ну, называется он по-дибильному - так это Гвидо виноват. В другом языке будет называться memoize и вызываться как функция высшего порядка. Сути-то это не меняет.

свопы

Уж точно понятнее, чем fibr с тремя агрументами. Ну, а вобще это специфика числовых рядов.

от себя добавлю нередкую необходимость явного копирования

Весь мой поинт в том, что оптимизация и должна быть явной.

В нормальном фп интерпретаторе/компиляторе ничего сломать нельзя нормальный, не писаный за два дня на коленке рантайм оптимизирует

Ну конечно, и проблему остановки он тоже умеет решать. Он же не на коленке писан. Он нормальный. Ну, а если не умеет, то значит не нормальный, ты не про этот говорил.