LINUX.ORG.RU

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

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

А если ничего хранить не надо, это просто указатель на функцию.

вот плюсовая лямбда с захватом:

void f(){
  int x = 100;
  int y = [x](){return x;}
}

что тут хранить?

ps. жабоскрипт это не регулярный компилируемый язык. если б его задумывали таковым, такие трюки там б делать запретили скорее всего, чтобы не усложнять исполняемый код.

зачем вообще возвращать фактически незамкнутые лямбды, исполнение которых зависит от скрытого довеска неких данных? то есть это специализация «на лету» которую приличные языки не любят. они любят это делать статически. имхо

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

А если ничего хранить не надо, это просто указатель на функцию.

вот плюсовая лямбда с захватом:

void f(){
  int x = 100;
  int y = [x](){return x;}
}

что тут хранить?

ps. жабоскрипт это не регулярный компилируемый язык. если б его задумывали таковым, такие трюки там б делать запретили скорее всего, чтобы не усложнять исполняемый код.

зачем вообще возвращать фактически незамкнутые лямбды, исполнение которуй зависит от скрытого довеска неких данных? то есть это специализация «на лету» которую приличные языки не любят. они любят это делать статически. имхо