|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Andrey Tarasevich 2:5020/400 08 Jan 2002 00:44:35 To : Andrew Ezhguroff Subject : Re: Гоpодская олимпиада по инфоpматике --------------------------------------------------------------------------------
Andrew Ezhguroff wrote:
> ...
> AE>> И не будет. Вложенные функции требуют значительных накладных расходов
> AE>> на этапе выполнения.
> VP> Зато это очень удобная вещь. Кстати, я не вижу никаких особых расходов
> VP> на них. Процессоры ix86 их поддерживают аппаратно с 80286. Если честно,
> VP> я был взбешен когда узнал, что в Си нет вложеных функций.
>
> Hакладные расходы при обращении из вложенных функций к переменным
> "охватывающих" функций (Пратт "Языки программирования: разработка и
> реализация.").
> ...
Такие "накладные расходы" ни имеют никакого отношения к эффективности
языка и, строго говоря, накладными расходами не являются. Hеизбежные
расходы на реализацию необходимой функциональности не называются
"накладными". Да и вообще понятие накладных расходов вне контекста
конкретного применения не имеет никакого смысла. При правильно
примеренении накладные расходы реализации вложенных функций в том же BP
равны нулю. Вот если ты начнешь использовать вложенные функции там, где
они совершенно не нужны - вот тогда эти расходы станут ненулевыми, но
виноват в это будешь ты сам.
Это примерно то же самое, что говорить, что в C++ контейнер
'std::vector' обладает накладными расходами по сравнению с обычным
массивом. Такое утвреждение бессмысленно. При использовании по
назначению накладными расходы 'std::vector' равны нулю.
Best regards,
Андрей.
--- ifmail v.2.15dev5
* Origin: good enough (2:5020/400)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/6682b50d4325.html, оценка из 5, голосов 10
|