2010-07-05 17 views
33

He estado leyendo varios paquetes Emacs Lisp y he encontrado la convención de algunas funciones declaradas con - después del prefijo de la biblioteca , por ejemplo:¿Qué significa la convención doble menos (-) en nombres de funciones en Emacs Lisp

(defun eproject--combine-regexps (regexp-list) 

me pregunto si esto una convención para la declaración de funciones "privados" a la biblioteca, pero hasta ahora no he encontrado nada en las directrices de codificación de Emacs.

Respuesta

29

Emacs no tiene ningún soporte para espacios de nombres, paquetes, bibliotecas o módulos. Por lo tanto, las fuentes de Emacs usan foo- como prefijo para una biblioteca foo, y en algunos casos foo-- se usa para enlaces que se supone que son internos.

+6

Pensé que podría ser, pero estaba tratando de encontrar en la documentación para señalar a tal convención. – stsquad

5

Realmente no existe tal cosa como "interno" para Emacs. Pero sí, algunos programadores han adoptado esta convención para indicar cosas que son más internas, lo que significa esencialmente que habrá menos (o ninguna) vacilación por parte de los implementadores para cambiarlas. Es una forma de permitir que los usuarios del código estén al tanto de esta posible volatilidad.

Cuestiones relacionadas