если вы не можете прочитать весь ответ Обновление контекст: Ответ "три"
РЕДАКТИРОВАТЬ: Извините Ответ вводит в заблуждение, вот правильный ответ:Так как F только что определен, но функция не оценивается, так как мы выполняем полный вызов до оценки F;новый код будет загружен, и значение будет «три»
Итак, я разместил вопрос в списке рассылки erlang, получил ответ с этим ответом
Приколы всегдапривязаны к коду, из которого они изначально загружены.Только поиск по имени зависит от загрузки кода AFAICT.Это было источником исключений в нашей предыдущей разработке, потому что при первой загрузке нового кода F все еще действует, но при второй загрузке нового кода старый код очищается и F теперь недействителен.Любой вызов этого вызовет исключение.Вместо этого мы завернули наши потребности в лямбда-выражения в модуль с состоянием.Не самый элегантный, но позволяет получать «динамические лямбды».Если все, что вам нужно для развлечения, это module: function, вы можете использовать для этого кортеж вместо веселья.С уважением, JW