Eu estava me divertindo adicionando alguns conselhos a uma função:
(advice-add 'executable-find :around
(lambda (f &rest args)
(apply g args)))
;;; ^
Ai, um erro de digitação. Corrigido e avaliado o código acima novamente. Mas agora tenho os conselhos "corrigido" e "quebrado" em torno dessa função.
Como faço para me livrar deles? Dado que advice-removeprecisa do objeto de função ou do conselho ao redor (que está vazio aqui)?
(Obviamente, posso simplesmente sair e reiniciar, mas há outra maneira, não é?)
eqa anterior, (2) aconselha-remove compara a função que você a transmite aos conselhos até encontrar aquele que éeqa ele e o remove, (3) mesmo que o conselho-remova usasse um teste diferente, por exemploequal, ele ainda não funcionaria, porque avaliações diferentes de uma forma lambda não funcionariamequaluma à outra. Acontece que (1) está correto, mas (2) e (3) estão errados: aconselhar - remover usosequale avaliar o mesmolambdaduas vezes produzequalresultados!