Общие проблемы при использовании макросов
Развертывание макросов может иметь неинтуитивные последствия. В этом разделе описаны некоторые важные последствия, которые могут привести к проблемам, и правила, которых следует придерживаться, чтобы избежать проблем.
| • Неверное время | Выполняйте работу в процессе развертывания, а не в макросе. | |
| • Вычисление аргументов | Развертывание должно вычислять каждый аргумент макроса один раз. | |
| • Удивительные локальные переменные | Связывания локальных переменных в процессе развертывания требуют особого внимания. | |
| • Вычисление во время развертывания | Не вычисляйте их; помещайте их в развертывание. | |
| • Повторное развертывание | Избегайте зависимости от того, сколько раз выполняется развертывание. |
Copyright © 1990-1996, 1998-2022 Free Software Foundation, Inc.
Licensed under the GNU GPL license.
https://www.gnu.org/software/emacs/manual/html_node/elisp/Problems-with-Macros.html