The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Samsung планирует в августе выпустить первый смартфон на баз..."
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Присылайте удачные настройки в раздел примеров файлов конфигурации на WIKI.opennet.ru.
. "Samsung планирует в августе выпустить первый смартфон на баз..." +/
Сообщение от Led (ok), 25-Мрт-13, 07:59 
> Во многих языках вообще нет оптимизации хвостовой рекурсии.

Это к чему было сказано?

> А там, где она
> есть она работает абсолютно так-же, как банальный цикл. На низком уровне.
> На уровне ассемблера есть инструкции сохранения стека, перехода на адрес нужной
> функции, возврата из этой функции и т.п. Так вот, на уровне
> машинных инструкций оптимизация хвостовой рекурсии выливается в исполнение одного и того
> же кода функции в цикле, без обязательного вызова процедуры сохранения/восстановления
> стека.

Цикл в ассеблере (x86) - это инструкция LOOP. Много вы видели, что C'шний цикл транслировался в LOOP? В 99% он транслируется в Jx - банальный условный переход - при чём здесь "цикл"?

> Ваш механизм - это разворачивание рекурсивного вызова функции в цикл(по
> своей сути, если не по форме). Объясните, что мешает вам сразу
> использовать более очевидное и простое решение(в случае, когда итерации цикла не
> зависят напрямую от предыдущих результатов кода, помещённого в цикл)?

От того, что вашему гуманитарному мозгу так кажется, это "решение" не становится "более очевидным и простым":)

> Есть задачи,
> в которых предпочтительней использование while/for.

Всё эти "задачи" почему-то легко и непринуждённо решаются в языках, у которых вообще нет операторов цикла (и goto), т.е. абсолютно нет. Представляете?

Ответить | Правка | Наверх | Cообщить модератору

Оглавление
Samsung планирует в августе выпустить первый смартфон на баз..., opennews, 16-Мрт-13, 22:31  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру