Respuestas:
No hay diferencia:
(eq 'my-add #'my-add)
rendimientos t
El #se puede usar delante de una lambdaexpresión que indica al compilador de bytes que la siguiente expresión puede ser compilada por bytes, consulte los documentos para funciones anónimas . Pero no hay nada que compilar en el caso de un símbolo.
En general, se utiliza en la representación impresa junto con el corchete de ángulo izquierdo (<) para indicar que el objeto impreso es una descripción (pero no se puede leer). Por ejemplo:
#<buffer foo.txt>
El lector también lo utiliza en construcciones para representar estructuras circulares. Consulte los documentos para leer la sintaxis para objetos circulares .
Y luego tiene su uso para denotar la base de números enteros , por ejemplo #x2c -> 44.
Y más, estoy seguro.
'symbolrepresenta (quote symbol)y #'symbolrepresenta (function symbol)sintácticamente.
La lista debería ser completa se puede encontrar en la parte superior del índice de referencia lisp de Emacs .
Editar : O incluso más convenientemente, desde el propio Emacs:
M-x info RET (abre el navegador de información)
d m elisp RET (abre el manual de elisp)
I # RET(enumere las entradas #en el índice)
Encontré esta pregunta mientras buscaba qué significaba el hash en algo que encontré mientras pirateaba mode-line-format:
#("-%-" 0 3
(help-echo "Display as tooltip when mouse hovers or with display-local-help."))
que es un formato utilizado para propiedades de texto en cadenas donde:
"-%-", texto para ser propietario: un guión y una construcción% que resulta en "guiones suficientes para llenar el resto de la línea de modo", dando como resultado el famoso Emacs ------.0, el primer carácter sobre el que se aplican las propiedades del texto.3, el último carácter sobre el que se aplican las propiedades del texto, es decir , la totalidad "-%-".(help-echo "..."), una propiedad y una cadena como argumento.Esto se puede crear con la propertizefunción :
(propertize "Hover over me!" 'help-echo '"congratulations!")

sería lo mismo que #("Hover over me!" 0 14 (help-echo "Congratulations!")):

Si está usando el modo de bloqueo de fuente, el uso del buffer-substringcomando puede producir algo como esto:
(buffer-substring 1 28) ; First 27 characters in the current buffer
⇒ #(";; This buffer is for notes"
0 3
(fontified t face font-lock-comment-delimiter-face)
3 27
(fontified t face font-lock-comment-face))
Entonces podrías crear algo como:

#a un símbolo solitario es obtener diagnósticos en tiempo de compilación si ese símbolo no está definido.