Qual è il modo idiomatico per implementare callback polimorfici in elisp?Richiamate polimorfiche in Emacs/Elisp
In particolare, supponiamo di avere una modalità secondaria con una funzione che esegue una determinata operazione e quindi richiama un'altra funzione. Questa seconda funzione dovrebbe avere un'implementazione diversa a seconda che il buffer corrente contenga un file C++ o un file Java.
In alternativa, supponiamo di voler sovraccaricare le variabili anziché le funzioni. Ad esempio, desidero richiamare un eseguibile esterno e uno degli argomenti passati è diverso a seconda che il buffer corrente abbia un file C++ o un file Java. Voglio essere in grado di costruire la riga di comando in una funzione generica e sostituire l'argomento a seconda del contenuto del buffer. make-variable-buffer-local
l'approccio giusto? A che punto (e con quale meccanismo) queste variabili locali dovrebbero essere inizialmente impostate?
Ho notato che 'make-variable-buffer-local' e' funcall' è l'approccio adottato con 'indent-line-function', tra gli altri. – Ray