Emacs fornisce avvertimenti utili sulla compilazione di byte. Esiste un plug-in che aggiunge avvisi relativi alle operazioni distruttive in uso? Così che quando scrivo codice come questo:Avviso operazione distruttiva Elisp?
(defun get-countdown()
(let ((x (number-sequence 0 10)))
(message (format "%s" (sort x #'>)))
x))#
Emacs si lamenta:
temp.el:4:5:Warning: using variable modified by `sort'.
O forse qualcosa di simile elisp-newbie-mode
che mette in evidenza tutte le funzioni distruttive?
Sarebbe bello, ma il compilatore di byte non fa un'analisi sufficientemente sofisticata per darti quel tipo di informazioni. Per quanto riguarda l'evidenziazione delle chiamate a 'sort',' nreverse', ecc ... è chiaramente possibile, ma non conosco nessun pacchetto pronto per questo. Sembra che potresti scriverne uno? – Stefan
Mi piacerebbe provare a fare quello con l'analisi prima o poi. Forse potrei ridefinire temporaneamente lambda per tenere traccia di ciò che viene fatto con gli argomenti . –