Дефункционализация: различия между версиями
[отпатрулированная версия] | [отпатрулированная версия] |
Содержимое удалено Содержимое добавлено
BsivkoBot (обсуждение | вклад) |
мНет описания правки |
||
Строка 1:
'''Дефункционализация'''
Одним из затруднений для этой идеи состоит в том, что функциональная абстракция может ссылаться на [[свободная переменная|свободные переменные]]. В такой ситуации до выполнения ''дефункционализации'' должен быть выполнен [[лямда-лифтинг]] (конвертация свободных переменных в [[Замыкание_(программирование)|замыкание]]), Таким образом, чтобы любая свободная переменная функциональной абстракции передавалась в качестве аргумента в функцию apply. Кроме того, если замывание поддерживается в качестве [[объект первого класса|значения первого класса]], то необходимо обеспечить создание новых структур данных для представления захваченных значений.
|